git、github和gitlab的区别

git

git,就是一个版本控制系统(Version Control System,VCS)。版本控制是一种记录一个或若干个文件内容变化,以便将来查询余额特定版本修订情况的系统。常见的还有SVN,CVS等软件。有了这些系统,我们就不用担心文件丢失,不小心无修改文件,而且还能随便回到历史修改的某个时刻。

SVN,CVS这类早起的版本控制软件,主要是集中式版本控制系统,他们都有一个单一的集中管理服务器,保存所有的文件修改版本,而系统工作的人员通过客户端链接到这台服务器上,取出最新的文件或是历史版本文件。


即每个协同人员通过客户端链接服务器端,个人主机上只有某个版本的文件,而服务器上有各个版本的文件。假如服务器宕机或是服务器坏掉,则所有版本的文件都会丢失。

而git是分布式版本控制系统。这里的客户端并不只是提取最新版本的文件快照,而是把代码仓库完整的镜像下来。这样任何一个协同主机宕机或是发生故障,都可以从任何一个镜像出来的本地仓库恢复。因为在git中每次提取,都是对代码仓库的一次完整备份。


github

git是版本控制系统,而github是在线的基于git的代码托管服务。百度百科说github是一个面向开源及私有软件项目的托管平台,因为仅仅支持git作为唯一的版本库格式进行托管,因此成为github。托管可以分为共有托管和私有托管,及不收费项目和收费项目。

github可以托管各种git库,并且提供一个web界面。它的一个特殊的卖点就是从另外一个项目进行分支很简单。

目前该平台已经被微软收购。

gitlab

git是版本控制系统(分布式),github是在线的基于git的代码托管服务,提供公共(免费)托管和私有 (收费)托管。相对于大部分国人来说,一直比较喜欢免费的。而gitlab就解决了这个问题。在gitlab上,个人开免费创建私有的repo(仓库)。gitlab也是基于git的代码托管服务。只是因为gitlab解决了创建私有repo收费的问题。另外使用gitlab,需要自己搭建一个服务器,而github可以直接注册使用。

广大开发者可以自己尝试下,现在的资料还是不少,可以自己动手摸索下。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 使人有乍交之欢,不若使人无久处之厌 。
    笑阎罗阅读 1,130评论 0 0
  • 传送门:http://www.jianshu.com/p/46dd81402f63
    永远都能阅读 1,580评论 0 0
  • 做错了也不管吗你管不了的 建议过了对方不听心已尽到 生活自会奖罚分明谁都甭逃 别人的优秀轮不到你去骄傲 别人的龌龊...
    石头wdh阅读 3,034评论 0 3
  • 我喜欢时钟,喜欢亲眼看它一点点从眼皮底下溜走 我喜欢秒针,只有它走的最快 我想 是不是因为它最珍惜时间 它转了一圈...
    石雨季阅读 1,594评论 0 1

友情链接更多精彩内容