博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

Github介绍

Posted on 2022-05-12 18:32  牛心奶黄包  阅读(896)  评论(0编辑  收藏  举报

  GitHub是一个面向开源及私有软件项目的托管平台,因为只支持Git作为唯一的版本库格式进行托管,故名GitHub。

   作为开源代码库以及版本控制系统,Github拥有超过900万开发者用户。随着越来越多的应用程序转移到了云上,Github已经成为了管理软件开发以及发现已有代码的首选方法。
如前所述,作为一个分布式的版本控制系统,在Git中并不存在主库这样的概念,每一份复制出的库都可以独立使用,任何两个库之间的不一致之处都可以进行合并。
GitHub可以托管各种git库,并提供一个web界面,但它与外国的SourceForgeGoogle Code或中国的coding的服务不同,GitHub的独特卖点在于从另外一个项目进行分支的简易性。为一个项目贡献代码非常简单:首先点击项目站点的“fork”的按钮,然后将代码检出并将修改加入到刚才分出的代码库中,最后通过内建的“pull request”机制向项目负责人申请代码合并。已经有人将GitHub称为代码玩家的MySpace。
在GitHub进行分支就像在Myspace(或Facebook)进行交友一样,在社会关系图的节点中不断的连线。
GitHub项目本身自然而然的也在GitHub上进行托管,只不过在一个私有的,公共视图不可见的库中。开源项目可以免费托管,但私有库则并不如此。Chris Wanstrath,GitHub的开发者之一,肯定了通过付费的私有库来在财务上支持免费库的托管这一计划。
通过与客户的接洽,开发FamSpam,甚至是开发GitHub本身,GitHub的私有库已经被证明了物有所值。任何希望节省时间并希望和团队其它成员一样远离页面频繁转换之苦的人士都会从GitHub中获得他们真正想要的价值。
在GitHub,用户可以十分轻易地找到海量的开源代码。
一.基本使用

1 注册GItHub账号

首先是要在githhub官网注册一个账号

 

点击注册链接后就跳转到注册界面了 在该页面完成个人注册

 

 

 

 

完成注册并登陆后会显示下面这个页面

 

 

2创建仓库并上传本地代码

在此处选择代码文件夹的路径

 

 

 

 

然后点击Add Resposity来在本地创建一个仓库,现在该仓库中只有某个网站的部分代码,用户团队协作开发。

然后课看到要提交到该仓库中的文件,并为这次操作添加简介,并点击Commit按钮(此次提交时提交到了主分支上)

 

 

 

 

 

到此已成功过地在本地创建了一个仓库 接下来就是把这个仓库同步到远程服务器上

 

 

 

 

此时登录GItHub就会看到自己的仓库中多了个名为Test的仓库

 

这些操作都是在master分支上进行的,如果想进行下一步开发,可新建一个分支,待操作完成后再讲这个新分支与master分支合并。

首先创建一个分支

 

 

 

 

 

 

此时若对本地仓库的文件作修改就会显示在GitHub for windows中

 

 

 

 

 

再次输入该次提交操作的简介然后将修改保存到本地仓库中,然后将本地仓库同步到远程仓库中

 

 

 

 

 

此时在GitHub中的这个仓库中会有两个分支,但刚才提交的修改是在新分支newBranch上修改的,master分支并没有被修改

 

 

 

 

 

接着就是合并

 

 

 

 

 

 

 

 至此已完成的一个最基本的GitHub的操作。

二.GITHUB的作用

   Git出来的目标是支持多人同时维护庞大的开源代码(linux),所以它的分支能力特别强大,体验特别好。加上支持离线提交,分布式推送拉取,使得代码层面的协作相当流畅。Git是一个版本控制系统,但这意味着什么? 当开发人员创建某些内容(例如,应用程序)时,他们会不断更改代码,直到第一个正式(非Beta版)发布之前和之后都会发布新版本。版本控制系统保持这些修订的直接性,将修改存储在中央存储库中。 这使开发人员可以轻松地进行协作,因为他们可以下载软件的新版本,进行更改并上载最新的修订版。 每个开发人员都可以看到这些新更改,下载并做出贡献。同样,与项目开发无关的人仍然可以下载文件并使用它们。 大多数Linux用户应该熟悉此过程,因为使用Git,Subversion或其他类似方法下载所需文件非常普遍-尤其是在准备从源代码编译程序时(对于Linux极客而言这是相当普遍的做法)。Git是大多数开发人员首选的版本控制系统,因为与其他可用系统相比,它具有多个优点。 它更有效地存储文件更改,并更好地确保文件完整性。 如果您有兴趣了解详细信息,请在Git基础页面上全面了解Git的工作原理。我们已经确定Git是一个版本控制系统,与其他可用替代方案相似,但效果更好。 那么,是什么让GitHub如此特别呢? Git是一种命令行工具,但是涉及Git的所有事物都围绕着中心旋转-GitHub.com-开发人员在该中心与志同道合的人一起存储他们的项目和网络。

 三.GITUB的功能

分叉回购 

分叉”是指您基于已经存在的另一个项目创建新项目时。 这是一个了不起的功能,极大地鼓励了程序和其他项目的进一步开发。 如果您在GitHub上找到要贡献的项目,则可以派生该仓库,进行所需的更改,然后将修订后的项目作为新仓库发布。 如果您为创建新项目创建的原始存储库已更新,则可以轻松地将这些更新添加到当前的fork中。

拉取请求

您已经分叉了一个存储库,对该项目进行了重大修订,并希望它被原始开发人员认可-甚至可能包含在正式的项目/存储库中。 您可以通过创建拉取请求来实现。 原始存储库的作者可以查看您的工作,然后选择是否将其接受到正式项目中。 每当您发出拉取请求时,GitHub都会为您和主要项目的维护者提供一种完美的交流平台。

社交网络

GitHub的社交网络方面可能是其最强大的功能,它使项目的增长远超过提供的任何其他功能。 GitHub上的每个用户都有自己的个人资料,其行为类似于各种简历,显示您过去的工作以及通过拉取请求对其他项目的贡献。

变更日志

当多个人在一个项目上进行协作时,很难跟踪修订—谁更改了什么,何时何地存储这些文件。 GitHub通过跟踪已推送到存储库的所有更改来解决此问题。