什么是Github?

初识Githubnode

GitHub 是程序员的必备技能linux

1.什么是Github?git

确切的说 GitHub 是一家公司,位于旧金山,由 Chris Wanstrath, PJ Hyett 与 程序员

Tom Preston-Werner 三位开发者在2008年4月创办。这是它的 Logo:github

2008年4月10日,GitHub正式成立,地址:How people build software · GitHub ,编程

主要提供基于git的版本托管服务。一经上线,它的发展速度惊为天人,截止目前,GitHub 已经发展成全球最大的开(同)源(性)社区。swift

2.Github和Git的关系?ruby

首先须要知道的一点是:网络

Git 是一款免费、开源的分布式版本控制系统,他是著名的 Linux 发明者 Linus Torvalds 开发的。说到版本控制系统,估计不少人都用过 SVN ,只不过 Git 是新时代的产物,若是你还在用 SVN 来管理你的代码,那就真的有些落伍了。不论是学习 GitHub ,仍是之后想从事编程行业,Git 均可以算是必备技能了,因此从如今开始建议你先去学习熟悉下 Git 。app

而 GitHub 上面说了,主要提供基于 git 的版本托管服务。也就是说如今 GitHub 上托管的全部项目代码都是基于 Git 来进行版本控制的,因此 Git 只是 GitHub 上用来管理项目的一个工具而已,GitHub 的功能可远不止于此!

3.GitHub 的影响力

上面我说了 GitHub 如今毫无疑问基本是全球最大的开源社区了,这样说大家可能认为未免有点浮夸,且听我一一举证:

全球顶级科技公司纷纷加入 GitHub ,并贡献他们本身的项目代码

全球顶级开源项目都优先选择在 GitHub 上开源

全球顶级编程大牛加入GitHub

图片描述

图片描述

  • 被称为「Android之神」的 JakeWharton:https://github.com/JakeWharton , 大家用的不少开源库如 ButterKnife、OkHttp、 Retrofit、 Picasso、ViewPagerIndicator 等都是出自他之手!

图片描述

4.GitHub 有什么用

  • 学习优秀的开源项目

  开源社区一直有一句流行的话叫「不要重复发明轮子」,某种意义上正是由于开源社区的贡献,咱们的软件开发才能变得愈来愈容易,愈来愈快速。试   想你在作项目时,若是每一模块都要本身去写,如网络库、图片加载库、ORM库等等,本身写的好很差是一回事,时间与资源是很大的成本。对于大公   司可能会有人力与资源去发明一套本身的轮子,可是对于大部分互联网创业公司来讲时间就是一切。并且你在使用开源项目的过程也能够学习他们优秀   的设计思想、实现方式,这是最好的学习资料,也是一份提高本身能力的绝佳方式!

  • 多人协做

  若是你想发起一个项目,好比翻译一份不错的英文文档,以为一我的的精力不够,因此你须要更多的人参与进来,这时候 GitHub 是你的最佳选择,感兴  趣的人能够参与进来,利用业余时间对这个项目作贡献,而后能够互相审核、合并,简直不要太棒!

  • 搭建博客、我的网站或者公司官网

  这个就不用多说了,如今愈来愈多的博客都是基于 GitHub Pages 来搭建的了,你能够为所欲为的定制本身的样式,能够给你博客买个逼格高的域名,再  也不用忍受各大博客网站的约束与各式各样的广告了!

  • 写做

  若是你喜欢写做,并且基于 Markdown, 并准备出版书籍,那么推荐你用 Gitbook ,技术写做人的最爱!

  • 我的简历

  若是你有一个活跃的 GitHub 帐号,上面有本身不错的开源项目,还常常给别的开源项目提问题,push 代码,那么你找工做将是一个很是大的优点,如今  程序员的招聘不少公司都很看中你 GitHub 帐号,某种意义上 GitHub 就能够算是你的简历了。并且不只国内,不少国外的科技公司都会经过 GitHub 来寻  找优秀的人才,好比我甚至经过 GitHub 收到过 Facebook 的邀请邮件!

  • 其余

  固然 GitHub 能作的还远不止这些,我见过不少在 GitHub 搞的一些有意思的项目,有找男友的,甚至还有利用 GitHub 的 commit 丧心病狂的秀恩爱   的,没错,那个丧心病狂的人就是我,若是你前段日子关注了个人 GitHub ,那么能看到这么一个壮观的景象:

图片描述

 

加入Github

 

1.注册 GitHub

 

先去 GitHub 官网「How people build software · GitHub」注册「Sign Up」个帐号,注册页面以下:

 

这个应该没啥说的,须要填用户名、邮箱、密码,值得一提的用户名请不要那么随便,最好取的这个名字就是你之后经常使用的用户名了,也强烈建议你各大社交帐号都用同样的用户名,这样识别度较高,好比个人博客域名、GitHub、知乎等其余社交帐号 ID 都是 stormzhang ,微博是由于被占用了,无奈换了个id,并且这个用户名之后在 GitHub 搭建博客的时候默认给你生成的博客地址就是 http://username.github.io ,因此给本身取个好点的用户名吧。

填好用户名、邮箱、密码紧接着到这一步:

这个是什么意思呢?GitHub 有两种,一种是公开,这种是免费的,就是你建立的项目是开放的,全部人都能看获得;另外一种是私有,这种是收费的,这种通常是不少企业在使用 GitHub 的私有仓库在托管本身的项目,这也是 GitHub 的一种盈利模式对于我的你就直接默认选择公开的就好了。
2.认识Github
注册成功以后你会到 GitHub 的主页面来:

导航栏,从左到右依次是 GitHub 主页按钮、搜索框、PR、Issues、Gist(这些概念后面会讲的)、消息提醒、建立项目按钮、个人帐号相关。

讨论区,这部分你能够理解成微博,就是你关注的一些人的活动会出如今这里,好比若是大家关注我了,那么之后我 star、fork 了某些项目就会出如今你的时间线里。 ^_^ 由于是新建立的Github,因此空旷了些

个人项目,这部分就不用说了,若是你建立了项目,就里就能够快捷访问。

3.设置你的Github

若是你也是新注册的 GitHub 帐号,是否是以为很简陋?虽然咱们尚未多少本身的项目,可是第一步起码要先完善本身的信息,点击以下的 Settings 菜单:

到设置页面来设置一些基本信息:

像头像、Name 建议要设置一个经常使用的,这两个颇有识别性,公开的邮箱也要设置一个,这样那些企业啊、猎头啊就经过这个公开邮箱去联系你,友情提醒:别在 GitHub 把本身的 QQ 邮箱放上去,不显得太 low 了么?没有 gmail 邮箱,起码也得注册个 foxmail、163 邮箱之类的吧。

4. GitHub 基本概念

上面认识了 GitHub 的基本面貌以后,你须要了解一些 GitHub 的基本概念,这些概念是你常常会接触并遇到的。

  • Repository

  仓库的意思,即你的项目,你想在 GitHub 上开源一个项目,那就必需要新建一个 Repository ,若是你开源的项目多了,你就拥有了多个 Repositories 。

  • Issue

  问题的意思,举个例子,就是你开源了一个项目,别人发现你的项目中有bug,或者哪些地方作的不够好,他就能够给你提个 Issue ,即问题,提的问题  多了,也就是 Issues ,而后你看到了这些问题就能够去逐个修复,修复ok了就能够一个个的 Close 掉。

  • Star

  这个好理解,就是给项目点赞,可是在 GitHub 上的点赞远比微博、知乎点赞难的多,若是你有一个项目得到100个star都算很不容易了!

  • Fork

  这个很差翻译,若是实在要翻译我把他翻译成分叉,什么意思呢?你开源了一个项目,别人想在你这个项目的基础上作些改进,而后应用到本身的项目   中,这个时候他就能够 Fork 你的项目,这个时候他的 GitHub 主页上就多了一个项目,只不过这个项目是基于你的项目基础(本质上是在原有项目的基   础上  新建了一个分支,分支的概念后面会在讲解Git的时候说到),他就能够为所欲为的去改进,可是丝绝不会影响原有项目的代码与结构。

  • Pull Request

  发起请求,这个实际上是基于 Fork 的,仍是上面那个例子,若是别人在你基础上作了改进,后来以为改进的很不错,应该要把这些改进让更多的人收益,  因而就想把本身的改进合并到原有项目里,这个时候他就能够发起一个 Pull Request(简称PR) ,原有项目建立人就能够收到这个请求,这个时候他会  仔细review你的代码,而且测试以为OK了,就会接受你的PR,这个时候你作的改进原有项目就会拥有了。

  • Watch

  这个也好理解就是观察,若是你 Watch 了某个项目,那么之后只要这个项目有任何更新,你都会第一时间收到关于这个项目的通知提醒。

  • Gist

  有些时候你没有项目能够开源,只是单纯的想分享一些代码片断,那这个时候 Gist 就派上用场了!

参考自  简书stormzhang大佬    连接:http://www.jianshu.com/p/d9f9bba4da0f

相关文章
相关标签/搜索