复制版本控制存储库的最佳方法是什么?

时间:2008-08-19 12:48:21

标签: version-control cvs

这是我的情景。我在一个位置(A)有一个cvs存储库,我想复制它并使其与另一个位置(B)的存储库保持同步。这将是从A到B的单向定向同步。这样做的最佳方法是什么?如果在CVS中不可行,那么您建议使用哪个源代码控制系统来完成此任务?感谢

4 个答案:

答案 0 :(得分:4)

使用CVS时,除了文件同步之外,我不知道有什么工具可以做到这一点。您可以使用rsync(Unix)或xcopy / robocopy(Windows)等工具实现这一目标。

如果您打算迁移到Subversion,它会提供一个名为svnsync的工具,允许从另一个存储库同步存储库。

答案 1 :(得分:3)

我建议您从CVS迁移到适当的分布式版本控制系统,例如git,这将非常自然地提供这种功能。

Subversion还提供了svnsync,它可以做同样的事情。

答案 2 :(得分:2)

如果您使用CVS采用rsync / filecopy方法,则只有在没有活动提交时才同步文件非常重要。否则,存储库的锁定文件将被复制,在下一次同步之前,您将无法在目标端签出/更新。

仅此原因可能使CVS成为一个糟糕的选择。从CVS到Subversion的迁移路径非常流畅,并且有一些工具可以将带有历史记录的完整CVS仓库导入Subversion。

如果你想进入真正的分布式版本控制,请考虑使用Git或Mercurial,但听起来这对你的“只读”需求来说太过分了。

答案 3 :(得分:0)

最佳(也许是最昂贵的)方式是Clearcase Multisite

但如果您正在寻找开源,Git正在迅速取代各地的s​​vn ..