2013-07-11 24 views
2

我已經將一個古老的cvs倉庫遷移到git。在我的項目中,我有幾個不同的開發團隊,他們需要訪問相同或不同的存儲庫文件夾。所以我的想法是將中央存儲庫分成幾個存儲庫,以便每個團隊都可以訪問一個存儲庫並存儲他們需要的文件夾。在這些存儲庫背後,需要一個集成存儲庫。如何組合類似的git存儲庫?

所以問題是有幾個團隊需要訪問的項目文件夾。例如:

Team-repo 1: folderA, folderB, folderD 
Team-repo 2: folderC, folderD 
-->Shared repo (repo1 + repo2): folderA, folderB, folderC, folderD 

在此示例文件夾D必須組合。 在git中可以實現這樣一個概念嗎?

我的意圖是,每個開發團隊只需要克隆一個小倉庫而不是大倉庫。

回答

1

您需要在其自己的存儲庫(至少每個獨立文件夾)中有每個「文件夾」。

然後使用子模塊(http://git-scm.com/book/en/Git-Tools-Submodules

  • 「模塊」 倉庫的概念:RepoA,RepoB,RepoC,RepoD
  • 「項目」 資料庫,使用git submodule:TEAM1,隊2

如果你看看我提供的網址,描述工作流程。

+0

我從來不喜歡那些不是非常靜態的第三方庫的子模塊。更新幾個快速變化的子模塊的開銷是瘋狂的。 – mnagel

+0

誠然,這一切都取決於過程和穩定性:我使用它來處理「一個模塊」,同時保持其他穩定,然後升級其他模塊,如果您的API足夠穩定,就像那樣工作 – Bruce

+0

但是,對子模塊的提交會不更新遠程倉庫(超級項目)。所以在我看來這太複雜了。那麼是否有其他機會來實施這樣的情景? – user2451418