簡體   English   中英

如何將來自不同存儲庫的git合並到1個倉庫中

[英]How to merge git from different repositories into 1 repo

我正在一個項目中,我將整個項目分為多個模塊,然后分別進行開發。 我不希望各個模塊的開發人員可以訪問任何其他模塊或整個項目,而他們只能看到其模塊。我該如何使用現有的git系統(例如github或bitbucket)來執行此操作。 每個模塊都將是一個存儲庫,然后是連接到每個存儲庫中以合並數據的主存儲庫嗎?

  • 如果您管理同一倉庫的不同分支中的所有模塊 ,則開發人員可以查看所有分支,您只需為不同分支上的不同開發人員設置寫權限

  • 如果您不希望開發人員查看他們無法使用的其他模塊,則應將不同的模塊管理到單獨的git存儲庫中

    假設developerAmoduleAmoduleA (在單獨的repoA ),這是手動將repoA合並到主repo中的方法,如下所示:

     #In the main repo git remote add -f repoA <URL for repoA> git pull repoA master git add . git commit -am 'get change from repoA to main repo' git push origin master 

    如果要使用掛鈎將模塊存儲庫合並到主存儲庫中,則應滿足以下條件:

    1. 啟用以使用服務器端掛鈎。 您可以在每個模塊存儲庫上使用post-push掛鈎。 將更改推送到遠程存儲庫后,您可以將更改存儲到本地主存儲庫。
    2. 您最好在自己的機器上設置遠程存儲庫,因為如果使用github,則用戶無法使用服務器端掛鈎。
    3. 如果決定使用git hook,則應考慮自動解決合並沖突。 如果合並沖突沒有解決,則git hook腳本將掛斷或返回錯誤。

    您還可以使用其他方式將模塊存儲庫合並到主存儲庫中,例如git subtreegit sumodule等。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM