为什么说 Git 比 SVN 更好

 我来答
Suzics
推荐于2016-05-30 · TA获得超过224个赞
知道小有建树答主
回答量:86
采纳率:100%
帮助的人:51.9万
展开全部
GIT是分布式源代码管理,SVN称之为集中式管理。
所谓集中管理,就是所有人本地仅有一组文件,即改动后的文件,以及每个文件的改动记录(存放于隐藏的svn目录中),大家把改动后的文件,提交到同一个网络中心服务器上去。在服务器上有完整的代码历史记录。
而分布式管理最大的不同就是,本来网络中心服务器才有的完整代码历史记录,现在可以放在每个人自己的本地了。这样,当你使用GIT管理代码时,不要求一定有网络连接,你可以在本本地提交代码,查看历史记录,执行回滚等操作。而需要合并多人代码的时候,每个人本地的代码记录,再用push的方式在服务器上汇总;大家需要更新的时候,从服务器上pull下来最新代码库(而不仅是一个revision)。也就是说,源代码管理分布到每个人的单机,每个人处理自己单机的一些更新、回滚、自我合并等功能,然后在服务器上进行一个综合合并操作。集中式管理过分依赖服务器一次合并的情况得到了缓解。
分布式管理需要更复杂的逻辑来处理,但是,基于本来就是多人合作的前提,大家也可以在管理中各负其责,比如,指定一个人单独处理服务器合并,其他人只做好自己的本地改动即可,而不是集中管理时,一提交,不论是谁都需要做好合并代码的准备。
分布式管理更多的使用分支的概念协同工作。每个人的代码都是一个单独的分支,服务器合并代码的时候,分支产生合并,并且将改动再拉回到自己的原本分支;对于一些多版本要求的代码,控制分支的合并内容,可以很好的把握并行多个版本的开发工作。
总之,以GIT为代表的分布式源代码管理更加的系统、方便、甚至更容易迁移(因为人人都有单独的完整代码历史记录,不完全依赖服务器)。但是正因为多了这许多细节,GIT理解起来要比SVN复杂很多,需要悉心体会,门槛比较高。一旦熟悉起来,就再也不想用SVN了。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式