2008-08-19 132 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 ..

相關問題