这是我的情况。我在一个位置 (A) 有一个 cvs 存储库,我想复制它并使其与另一个位置的存储库保持同步 (B)。这将是从 A 到 B 的单向同步。最好的方法是什么?如果它在 CVS 中不可行,那么您会推荐哪个源代码控制系统来完成此任务?谢谢
martinatime
问问题
1043 次
4 回答
4
使用 CVS 时,除了文件同步之外,我不知道有任何工具可以做到这一点。rsync
您可以使用(Unix) 或xcopy
/ robocopy
(Windows)等工具来实现这一点。
如果您计划迁移到 Subversion,它提供了一个名为 svnsync 的工具,允许从另一个存储库同步存储库。
于 2008-08-19T12:52:05.653 回答
2
我建议您从 CVS 迁移到适当的分布式版本控制系统,例如git,它将非常自然地提供这种功能。
Subversion 也提供了 svnsync 来做同样的事情。
于 2008-08-19T12:54:44.990 回答
2
如果您确实对 CVS 采用 rsync/filecopy 方法,那么仅在没有活动提交的时候同步文件是很重要的。否则,存储库的锁定文件将被复制,您将无法在目标端签出/更新,直到下一次同步。
仅此一个原因就可能使 CVS 成为一个糟糕的选择。从 CVS 到 Subversion 的迁移路径非常顺利,并且有一些工具可以将带有历史记录的完整 CVS 存储库导入 Subversion。
如果您想进入真正的分布式版本控制,请考虑使用 Git 或 Mercurial,但这听起来对于您的“只读”需求来说太过分了。
于 2008-08-19T13:04:06.813 回答
0
最好的(也许是最昂贵的)方法是Clearcase Multisite
但是如果你正在寻找开源,Git正在迅速取代 svn。
于 2008-08-19T13:06:40.507 回答