2008-08-19 95 views
3

这是我有的场景。我在一个位置有一个cvs存储库(A),我想复制它并使其与另一个位置的存储库同步(B)。这将是从A到B的单向同步。什么是最好的方法来做到这一点?如果它在CVS中并不真的可行,那么你会推荐哪种源代码控制系统来实现这一目标?谢谢复制版本控制库的最佳方法是什么?

回答

4

当使用CVS时,除了文件同步之外,我不知道有任何工具可以执行此操作。您可以使用如rsync(Unix)或xcopy/robocopy(Windows)的工具来实现此目的。

如果您计划迁移到Subversion,它提供了一个名为svnsync的工具,它允许从另一个版本库中同步存储库。

3

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

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

2

如果您确实采用了CVS的rsync/filecopy方法,那么仅在没有活动提交时才同步文件是很重要的。否则,系统信息库的锁定文件将被复制,直到下一次同步时,您将无法在目标端检出/更新。

这个原因可能会让CVS成为一个不好的选择。从CVS到Subversion的迁移路径非常流畅,并且有工具可以将带历史记录的完整CVS回购库导入到Subversion中。

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

0

最好的(也许是最昂贵的)方法是Clearcase Multisite

但是,如果你正在寻找开源,Git正在成为迅速取代无处不在SVN ..

相关问题