SVN与GIT的分支成本

SVN与GIT的分支成本,git,svn,version-control,Git,Svn,Version Control,将SVN与GIT进行比较 创建一个包含100个文件(仅举一个例子)的文件夹分支的相对成本比较是多少? 其中哪一个成本更低?无论有多少文件,在这两个系统中创建分支几乎都是即时的。它只是创建一个特定版本号的引用。您所指的确切成本指标是什么? 下面是SVN和GIT之间差异的简要分析。 这里有一个链接,将SVN1.8分支/合并与GIT进行比较。 最后,这里是SVNs对分支实际是什么(以及它不是什么)的评论: “Subversion的存储库有一个特殊的设计。当你复制目录时,你不必担心存储库会变大。S

将SVN与GIT进行比较

创建一个包含100个文件(仅举一个例子)的文件夹分支的相对成本比较是多少?
其中哪一个成本更低?

无论有多少文件,在这两个系统中创建分支几乎都是即时的。它只是创建一个特定版本号的引用。

您所指的确切成本指标是什么?

下面是SVN和GIT之间差异的简要分析。

这里有一个链接,将SVN1.8分支/合并与GIT进行比较。

最后,这里是SVNs对分支实际是什么(以及它不是什么)的评论: “Subversion的存储库有一个特殊的设计。当你复制目录时,你不必担心存储库会变大。Subversion实际上不会复制任何数据。相反,它会创建一个指向现有树的新目录项。如果你是一个有经验的Unix用户,你会认识到这与硬拷贝背后的相同概念链接。”

在这种情况下,Subversion将创建到文件夹的“符号链接”

Apache Subversion中的复制/标记/分支是即时的,而且成本低廉。让我引述:

廉价拷贝

Subversion的存储库有一个特殊的设计。当你复制一个 目录,您不必担心存储库的增长 巨大的Subversion实际上不会复制任何数据。相反,它 创建指向现有树的新目录项。如果 您是一位经验丰富的Unix用户,您会认识到这一点 硬链接背后的概念。随着对文件和 复制目录下的目录,Subversion继续 尽可能采用这种硬链接概念。它只复制数据 当需要消除对象不同版本的歧义时

这就是为什么你经常听到Subversion用户谈论“便宜” 复制。“不管目录有多大,都需要很长的时间 微小的、恒定的时间和空间来复制它。事实上 此功能是提交在Subversion中工作的基础:每个 修订版是先前修订版的“廉价副本”,只包含几个项目 懒洋洋地在里面换衣服。(要了解更多信息,请访问Subversion的 并阅读Subversion设计中的“冒泡”方法 文件。)

当然,这些复制和共享数据的内部机制是 对用户隐藏,用户只看到树的副本。要点 这是因为复制品在时间和空间上都很便宜。如果你 完全在存储库中创建分支(通过运行svn copy URL1 URL2),这是一个快速、恒定的时间操作。把树枝当作 你想怎么做就怎么做


@Chris Subversion制作的是“廉价拷贝”,而不是拷贝。在SVN中,分支只是到主树的链接。SVN只有在没有链接时才能复制。我在发布这篇文章之前已经读过了。我只是想比较一下两者的成本。我也浏览了其他链接。他们都在谈论GIT和SVN,但没有一个资源谈到这两个系统之间的实际成本差异。(以某种方式量化成本)。这实际上可能不可能量化,但这也需要证明。因为你是在比较分布式控制系统和集中式控制系统,你在某些方面有点像在比较苹果和桔子。我同意GIT的驱动器空间和创建时间更快,因为它只使用指针()。我不打算比较GIT和SVN。我的问题仅限于“分支成本”。我在发布这篇文章之前读过那本书。这不是我的问题。SVN和GIT之间的成本差异。