使用SVN进行大项目是一件痛苦的事。提交约60-70 MB的项目(Symfony + Zend Project)需要3-4个小时。我的速度为512 KBPS,即宽带。 SVN Repository在代码上
同一项目提交给相同的代码GIT存储库最多需要10分钟。 操作系统是Ubuntu Linux
Linus Torvalds创建了GIT,他在这里赢得了SVN / CVS http://buytaert.net/linus-torvalds-on-git
(请参阅点上的视频 - > 3:00分钟报价 - “Subversion是有史以来最无意义的项目:)”不是我,但他在说。
我一直认为GIT的速度要快几十倍,因为我认为它会使用一些GZIP压缩。还有其他原因。
确切的小时数并不重要,但我的意思是性能。
为什么?
答案 0 :(得分:4)
没有“没有本地GIT回购”这样的事情。 GIT总是有一个本地仓库,你签入它,然后你必须明确地将本地仓库推送到远程仓库。如果未填充远程仓库,则该推送必须至少传输一次所有60MB。即使使用压缩,该数据也不会少得多,因此需要3-4分钟。最好以512Kbps的速度运行,每分钟传输3MB,这样可以实现最佳的带宽饱和度,因此60MB至少需要20分钟。
SVN确实有开销,因为它是基于每个文件进行传输的。 GIT针对批量回购转移进行了优化。这将有所作为。另一方面,您可以设置SVN仓库的本地副本,在本地签入,然后复制到远程仓库,这将使性能更接近GIT的数字。当然,我怀疑任何在线SVN提供商都支持这种情况。
答案 1 :(得分:2)
在512 Kbps时,上传60 MB数据大约需要120分钟(60000/512 = 117.18)。我相信当你承诺使用GIT时,某些地方肯定会出错。
答案 2 :(得分:0)
网络连接速度可能是一个问题,以及服务svn或git的机器的性能。我在本地计算机上用不到3小时的时间将最多10GB的文件提交给SVN。从来没有尝试过使用GIT。