2010-07-21 141 views
4

我的開發系統有幾個項目 - 有些項目是開源的,(這裏是'問題'),使用他們自己的版本控制系統(RCS)。使用多個版本控制系統的多個項目的單一版本控制系統

據最新的統計,在不同的RCS我的機器上是:

  • CVS
  • SVN
  • 善變
  • 混帳
  • ...

其難度足夠的,試圖記住和掌握單個系統的命令 - 所以我正在考慮'放棄'他們所有並安定一個 - 不完全放棄他們,我會進一步解釋。

理想情況下,我想:

  • 有一個系統,我用的一切 - 即在我的代碼更改檢查和對存儲在我的倉庫以前的版本上運行的diff。我稱之爲我的主RCS

  • 仍然能夠更新特定項目中的代碼 - 使用它的作者正在使用的任何版本控制系統(mercurial,git或其他),解決任何衝突等後,確保更新的代碼構建,然後我想檢查更新後的代碼到我的MASTER RCS中。這當然意味着我將需要保留不同的RCS,我將稱其爲SLAVE RCS。

在備份方面,它只有存儲在我將備份的MASTER RCS中的數據。

現在對於我的問題:

是我可能提出的方案嗎? (我看不出爲什麼) - 但可能有一些我可能沒有意識到的問題 - 我將很感激關於應該注意什麼和要避免什麼的提示。

順便說一句,我想使用SVN作爲MASTER RCS。如果您能想到不使用SVN的原因(即選擇另一個MASTER RCS),我會對您的理由感興趣。

回答

0

你可能有興趣通過遵循Amp project

  • 所有庫格式通用API。
  • 將包括(還沒有)git,bazaar,svn,cvs,darcs在Ruby中。 100%兼容

今天它包裝Mercurial命令。明天,它將包裝許多VCS。


現在,您可以使用SVN作爲常見的回購。

另一種方法我想是:

  • 任何VCS工具,我碰巧有使用給定項目(Perforce公司,ClearCase的,CVS,SVN,...)
  • 獲得Workspace git init在該工作區的根目錄(有效地創建工作空間內的git倉庫)
  • 黑客和在該GIT中回購開發
  • 一旦代碼是穩定的,從相同的工作區中提交於天然VCS方式直接。

參見例如this question
沒有要設置的服務器。沒有.svn遍佈我的目錄。只能使用一組命令:git

+0

理論上聽起來不錯,但我會安全地使用它,並與我所知道的一樣 - 現在,即SVN。 – morpheous 2010-07-25 15:32:38