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