← 返回文章

一、github介绍

什么是github GitHub 是为开发者提供 Git 仓库的托管服务。这是一个让开发者与 朋友、同事

什么是github

GitHub 是为开发者提供 Git 仓库的托管服务。这是一个让开发者与 朋友、同事、同学及陌生人共享代码的完美场所。

GitHub 除提供 Git 仓库的托管服务外,还为开发者或团队提供了一 系列功能,帮助其高效率、高品质地进行代码编写。

GitHub 与 Git 的区别

GitHub 与 Git 是完全不同的两个东西。 在 Git 中,开发者将源代码存入名叫“Git 仓库”的资料库中并加以使用。

而 GitHub 则是在网络上提供 Git 仓库的一项服务。

也就是说,GitHub 上公开的软件源代码全都由 Git 进行管理。

在开发者之间引发化学反应的 Pull Request

Pull Request 是指开发者在本地对源代码进行更改后,向 GitHub 中托管的 Git 仓库请求合并的功能。

开发者可以在 Pull Request 上通过评论交流,例如“修正了BUG,可以合并一下吗?”以及“我试着做了这样一个新功能,可以合并一下吗?”等。

通过这个功能,开发者可以轻松更改源代码,并公开更改的细节,然后向仓库提交合并请求。而且,如果请求的更改与项目的初衷相违,也可以选择拒绝合并。

GitHub 的 Pull Request 不但能轻松查看源代码的前后差别,还可以对指定的一行代码进行评论。通过这一功能,开发者们可以针对具体的代码进行讨论,使代码审查的工作变得前所未有地惬意。

对特定用户进行评论

方便和快捷并不是 Pull Request 的专利。任务管理和 BUG 报告可以通过 Issue 进行交互。

如果想让特定用户来看,只要用“@用户名”的格式书写,对方便会接到通知(Notifications),查看 Issue。

由于也提供了 Wiki功能,开发者可以轻松创建文档,进行公开、共享。Wiki 更新的历史记录也在 Git 中管理,可以让用户轻松更改。

还可以这样写 !!

GitHub 中可使用的描述方法并不止“@ 用户名”一种。

输入“@ 组织名”可以让属于该 Organization(组织)的所有成员收到通知注。

输入“@ 组织名 / 团队”可以让该团队的所有成员收到通知。这就是同时向多人发送通知的方法。

输入“# 编号”,会连接到该仓库所对应的 Issue 编号。

输入“用户名 / 仓库名 # 编号”则可以连接到指定仓库所对应的 Issue编号。

GitHub 提供的主要功能

  • Git 仓库
  • Organization
  • Issue

Issue 功能,是将一个任务或问题分配给一个 Issue 进行追踪和管理的功能。

可以像 BUG 管理系统或 TiDD(Ticket-driven Development)的Ticket 一样使用。

在 GitHub 上,每当进行 Pull Request,都会同时创建一个 Issue。

每一个功能更改或修正都对应一个 Issue,讨论或修正都以这个Issue 为中心进行。

只要查看 Issue,就能知道和这个更改相关的一切信息,并以此进行管理。

在 Git 的提交信息中写上 Issue 的 ID(例如“#7”),GitHub 就会自动生成从 Issue 到对应提交的链接。

另外,只要按照特定的格式描述提交信息,还可以关闭 Issue。

  • Wiki

通过 Wiki 功能,任何人都能随时对一篇文章进行更改并保存,因此可以多人共同完成一篇文章。该功能常用在开发文档或手册的编写中。

Wiki 页也是作为 Git仓库进行管理的,改版的历史记录会被切实保存下来,使用者可以放心改写。

由于其支持克隆至本地进行编辑,所以程序员使用时可以不必开启浏览器。

  • Pull Request

开发者向 GitHub 的仓库推送更改或功能添加后,可以通过 Pull Request 功能向别人的仓库提出申请,请求对方合并。

Pull Request 送出后,目标仓库的管理者等人将能够查看 Pull Request 的内容及其中包含的代码更改。

同时,GitHub 还提供了对 Pull Request 和源代码前后差别进行讨论的功能。

通过此功能,可以以行为单位对源代码添加评论,让程序员之间高效地交流。

END