首页 > 其他 > 详细

GitHub概述

时间:2020-02-14 12:35:15      阅读:64      评论:0      收藏:0      [点我收藏+]

1 引言

GitHub是为开发者提供Git仓库的托管服务,是一个让开发者与同事、同学及相同兴趣爱好者共享代码的完美场所。

GitHub公司总部位于美国旧金山,拥有一只似章鱼又似猫的吉祥物。

技术分享图片

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

GitHub创始人之一Chris Wanstrath表示GitHub并非只是想实现分享代码的功能,认为这只是其中之一。

2 GitHub与Git的区别

目前,GitHub托管的仓库数已超千万,全世界的开发者都在使用它。但很多人仍然具有这样的疑问,GitHub与Git之间有什么区别和联系呢?

技术分享图片

Git是一个版本控制系统,开发者将源代码存入名叫“Git仓库”的资料库中并加以使用。

而GitHub则是在网络上提供Git仓库的一项服务,也就是说,GitHub上公开的软件源代码全都由Git进行管理。因此,理解Git,是熟练运用GitHub的关键所在。

技术分享图片

3 GitHub带来的变化

此前,用于辅助多人协同工作的软件层出不穷,然而在以程序员为代表的软件开发者之间,一直都没有一个用来辅助多人协同编程的关键性软件。

因为软件开发者们往往要将版本管理系统、BUG跟踪系统、代码审查工具、邮件列表、IRC等众多工具组合在一起,才能实现多人协作。

然而,GitHub的出现为这种软件开发协作模式带来了巨大的变化。

3.1 Pull Request

Pull Request功能实现了让素未谋面的开发者们隔着半个地球的距离共同开发软件。让开发者在本地对源代码进行更改后,可以向GitHub中托管的Git仓库请求合并。

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

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

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

技术分享图片

 3.2 对特定用户进行评论

GitHub中任务管理和BUG报告可以通过Issue进行交互。如果想让特定用户来看,只要用“@用户名”的格式书写,对方便会接到通知(Notifications),查看Issue。

当使用“@组织名”格式时,可以让属于该组织(Organization)的所有成员都收到通知,即实现同时向多人发送通知的方法。

当使用“#编号”格式时,会连接到该仓库所对应的Issue编号;使用“用户名/仓库名 #编号”格式时,可以连接到指定仓库所对应的Issue编号。

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

 技术分享图片

 3.3 GitHub Flavored Markdown

在GitHub上,用户所有用文字输入的功能都可以用GitHub Flavored Markdown(GFM)语法进行描述。

此语法可以让标记变得简单,以此写出的评论与文档也会更容易理解。并且此语法还允许用户在评论中添加文字表情,使用户间的交流更加顺利。

 3.4 能看到更多其他团队的软件

GitHub提供的环境并不只局限于自己团队内部,只要将感兴趣的仓库添加至Watch,就可以在News Feed查看该仓库的相关信息。

如将全公司共用代码库的仓库添加到Watch中,便能在第一时间掌握最新版本的新功能或BUG修正的信息。如有必要,你还可提出意见并通过Pull Request提交自己的代码。

又如将其他团队正在开发的仓库添加到Watch中,就可以查看他们都在开发什么功能,一旦发现有用的功能或库,就可以立刻运用到自己的开发团队。

 3.5 与开源软件相同的开发模式

将GitHub运用到企业中,便会带来与开源软件相同的开发模式。

已经熟悉开源软件开发的开发者不必专门去学习企业独自采用的工具,就可以直接加入到开发行列。

4 社会化编程

随着GitHub的出现,软件开发者们才真正意义上拥有了源代码。世界上任何人都可以比从前更加容易地获得源代码,将其自由更改并加以公开。

如今,世界众多程序员都在通过GitHub公开源代码,同时利用GitHub支持着自己日常的软件开发,这就是社会化编程带来的好处。

技术分享图片

5 GitHub主要功能概述

  •  Git仓库

     一般情况下,用户可以免费创建任意个GitHub提供的Git仓库,但如果需要建立只对特定人物或只对自己公开的私有仓库,则需要付费才能使用。

  •  Organization

    一般情况下,个人使用时只需要个人账户便足够了,但如果是公司,建议使用Organization账户。其优点在于可以统一管理账户和权限,还能统一支付一些费用。

  • Issue

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

    在GitHub上,每一个功能更改或修正都对应一个Issue,讨论或修正都以这个Issue为中心进行。只要查看Issue,就能知道和这个更改相关的一切信息,并以此进行管理。

  • WiKi

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

  • Pull Request

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

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

     同时,GitHub还提供了对Pull Request和源代码前后差别进行讨论的功能。通过此功能,可以以行为单位对源代码添加评论,让程序员之间高效地交流。

6 小结

  技术分享图片

未完待续……

本文章属于原创作品,欢迎大家转载分享,禁止修改文章的内容。尊重原创,转载请注明来自:躬耕南阳  https://www.cnblogs.com/yangmi511/ 

GitHub概述

原文:https://www.cnblogs.com/yangmi511/p/12303404.html

(1)
(1)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!