主页 > 科技问答 > 正文

为什么说Git比SVN更好

2022-08-04 11:22来源:未知编辑:大白

扫一扫

分享文章到微信

扫一扫

关注99科技网微信公众号

为什么说 Git 比 SVN 更好

GIT是分布式源代码管理,SVN称之为集中式管理。

所谓集中管理,就是所有人本地仅有一组文件,即改动后的文件,以及每个文件的改动记录(存放于隐藏的svn目录中),大家把改动后的文件,提交到同一个网络中心服务器上去。在服务器上有完整的代码历史记录。

而分布式管理最大的不同就是,本来网络中心服务器才有的完整代码历史记录,现在可以放在每个人自己的本地了。这样,当你使用GIT管理代码时,不要求一定有网络连接,你可以在本本地提交代码,查看历史记录,执行回滚等操作。而需要合并多人代码的时候,每个人本地的代码记录,再用push的方式在服务器上汇总;大家需要更新的时候,从服务器上pull下来最新代码库(而不仅是一个revision)。也就是说,源代码管理分布到每个人的单机,每个人处理自己单机的一些更新、回滚、自我合并等功能,然后在服务器上进行一个综合合并操作。集中式管理过分依赖服务器一次合并的情况得到了缓解。

分布式管理需要更复杂的逻辑来处理,但是,基于本来就是多人合作的前提,大家也可以在管理中各负其责,比如,指定一个人单独处理服务器合并,其他人只做好自己的本地改动即可,而不是集中管理时,一提交,不论是谁都需要做好合并代码的准备。

分布式管理更多的使用分支的概念协同工作。每个人的代码都是一个单独的分支,服务器合并代码的时候,分支产生合并,并且将改动再拉回到自己的原本分支;对于一些多版本要求的代码,控制分支的合并内容,可以很好的把握并行多个版本的开发工作。

总之,以GIT为代表的分布式源代码管理更加的系统、方便、甚至更容易迁移(因为人人都有单独的完整代码历史记录,不完全依赖服务器)。但是正因为多了这许多细节,GIT理解起来要比SVN复杂很多,需要悉心体会,门槛比较高。一旦熟悉起来,就再也不想用SVN了。

99科技网:http://www.99it.com.cn

相关推荐
github与国内coding,oschina相比,有哪些优势 github与国内coding,oschina相比,有哪些优势

一、github bio是什么功能 你没有必要纠结整体的意思,但是你有必要知道这段历

科技问答2022-08-03

软件git,github for window,tortoisegit有什么区别 软件git,github for window,tortoisegit有什么区别

一、软件git,github for window,tortoisegit有什么区别 1、git有且只有一个,就是li

科技问答2022-08-03

大佬们都是用啥托管代码的?gitee还是github? 大佬们都是用啥托管代码的?gitee还是github?

一、大佬们都是用啥托管代码的?gitee还是github? 一个非常好的问题。我是工作

科技问答2022-08-03