将SVN与GIT进行比较,
在两者之间创建一个文件夹分支与100个文件(只是一个例子)的相对成本比较是什么? 其中哪一个成本更低?
答案 0 :(得分:3)
无论有多少文件,在两个系统中创建分支几乎都是即时的。它只是创建对特定修订号的引用。
答案 1 :(得分:1)
您指的是什么成本指标? http://lostechies.com/derickbailey/2010/02/24/branching-strategies-the-cost-of-branching-and-merging/
以下是SVN与GIT之间差异的简要分类。 http://www.differencebetween.net/technology/software-technology/difference-between-git-and-svn/
这里是SO的链接,将SVN 1.8分支/合并与GIT进行比较。 How is SVN v 1.8 branching / merging compared to Git?
最后,这里是SVN对分支实际是什么(以及它不是什么)的评论: “Subversion的存储库有一个特殊的设计。当你复制一个目录时,你不必担心存储库变得越来越大 - Subversion实际上不会复制任何数据。而是创建一个指向现有树的新目录条目如果你是一位经验丰富的Unix用户,你会发现这与硬链接背后的概念相同。“ http://svnbook.red-bean.com/en/1.5/svn.branchmerge.using.html
答案 2 :(得分:1)
在这种情况下,Subversion将为文件夹创建一个“符号链接”。
Apache Subversion中的复制/标记/分支是非常便宜的。让我引用SVNBook | Using Branches:
廉价副本
Subversion的存储库有一个特殊的设计。当你复制一个 目录,您不必担心存储库的增长 huge-Subversion实际上并不复制任何数据。相反,它 创建一个指向现有树的新目录条目。如果 你是一个经验丰富的Unix用户,你会认识到这一点 硬链接背后的概念。随着文件和文件的进一步更改 复制目录下的目录,Subversion继续 尽可能采用这种硬链接概念。它仅复制数据 当有必要消除不同版本的对象的歧义时。
这就是为什么你经常听到Subversion用户谈论“便宜” 副本。“目录的大小并不重要 - 它需要一个非常大的 微小的,恒定的时间和空间来制作它的副本。事实上, 这个功能是Subversion如何工作的基础:每个 修订版是上一版本的“廉价副本”,包含一些项目 懒洋洋地改变了。 (要了解更多相关信息,请访问Subversion 网站并阅读Subversion设计中的“冒泡”方法 文档。)
当然,这些复制和共享数据的内部机制是 隐藏在用户之外,只看到树木的副本。重点 这里的副本在时间和空间上都很便宜。如果你 完全在存储库中创建一个分支(通过运行svn copy URL1 URL2),这是一个快速,恒定的时间操作。把分支作为 经常如你所愿。
阅读SVNBook!