1. 什么是Git

作者: 小天_2516 | 来源:发表于2020-03-26 11:31 被阅读0次

    1. Git是什么?

            Git是一个(分布式、开源)版本控制系统,将程序的开发过程分步骤的记录下来。一个程序的开发不是一蹴而就的事情,需要经过不断地修改、完善、调试、维护.....

            在编码的过程中,可能会发生想把以往删除的代码恢复,对代码的删除、增加、修改等操作能留下历史记录,便于后期查看、操作。在团队开发中,使用版本控制系统,便于区分团队成员提交的代码。

    2. Git的诞生

            Git的诞生,要追溯到Linux内核开源项目说起。

            Linux内核开源项目有着为数众广的参与者,然而绝大多数的 Linux 内核维护工作都花在了提交补丁和保存归档的繁琐事务上(1991-2002年间)。 到了 2002 年,Linux 系统十周岁之际,整个项目组开始启用一个商业的分布式版本控制系统 BitKeeper 来管理和维护代码。

            在2002年,项目组获得了BitKeeper 的免费使用权。可在2005年,BitMover 公司发现 Linux 团队中有人试图破解 BitKeeper 的加密协议。BitMover收回了Linux社区的免费使用权。

            与此同时Linux团队决定,开始开发Git的旅程——

            - 2005年4月3日:Linus 开始开发 Git

            - 2005年4月6日:Git 项目对外发布

            - 2005年4月7日:Git 实现作为自身的版本控制工具

            - 2005年4月18日:实现多分支合并

            - 2005年6月16日:Linux内核2.6.12发布,Git 已经可以用于维护 Linux 核心源码

            - 2005年7月26日:Linus功成身退,将Git的维护工作交给另一名Git的主要贡献者Junio C Hamano

    Git官网

            自此,Git迅速在极客圈流行开来,并逐渐成为最流行的分布式版本控制系统。

            在2008年,GitHub(http://www.github.com)网站正式上线,它为开源项目免费提供Git存储,无数的开源项目开始迁移至GitHub。至今,GitHub已经是世界上最大的代码存放网站和开源社区。

    GitHub官网-程序员的微博

    3. 取代SVN

            在Git未问世之前,大多数公司使用SVN进行版本控制管理。在Git流行后越来越多的公司选择将代码迁移至Git。最具标志性的就是使用SVN做版本控制的Google Code因GitHub下台。

    谈及此,你可知SVN和Git的区别在哪?

            最为核心的区别是SVN是集中式版本控制系统,而Git是分布式版本控制系统。

            集中式版本控制系统需要一个服务器作为大本营,所有的代码都需要提交到服务器上进行统一管理。当你需要对代码进行修改时,需要先从服务器上下载一份拷贝,修改完成之后,还需要上传回服务器。

    集中式版本控制系统

            在分布式版本控制系统中,大家都拥有一个完整的版本库,不需要联网也可以提交修改,所以中心服务器就显得不那么重要了。由于大家都拥有一个完整的版本库,所以只需把各自的修改推送给对方,就可以互相看到对方的修改了。

    分布式版本控制系统

            分布式版本控制系统也有一个“中心服务器”,但它只是用于方便大家的交换而已,就算其崩溃了,影响也不大。而GitHub就是这么一个平台。

    分布式中心服务器-GitHub

            形象的比喻,SVN和Git好比两个家庭。SVN,要求丈夫挣的钱全部统一上交。而Git,允许丈夫发展自己的事业,上交多少钱,什么时候交,都是自愿的事。

    SVN迁移至Git的工具: https://github.com/nirvdrum/svn2git

    相关文章

      网友评论

        本文标题:1. 什么是Git

        本文链接:https://www.haomeiwen.com/subject/kqwquhtx.html