簡體   English   中英

Git如何制作一個主倉庫來跟蹤另外兩個倉庫

[英]Git How to make a master repo that tracks two other repos

我們正在開發一個應用程序,並使用Gi​​thub來保存和版本化我們的代碼。

目前,我們有2個人分別從事單獨的 倉庫RepoARepoB )。

我們認為最好是擁有1個主倉庫來保存完整的應用程序,但我們也想繼續自己開發單獨的倉庫。 我按照教程將兩個倉庫都合並到一個新的主倉庫RepoC )中。

一切運行正常,但是現在我們遇到了一個問題,即對RepoARepoB的更改不會反映在RepoC中 ,反之亦然。

所以我想知道...有什么辦法,我們可以告訴RepoC跟蹤RepoARepoB進行更改,並在需要時與它們同步。

如果上述方法不可行,那么是否存在至少一種方法,我們可以為自己的存儲庫做出貢獻,然后在主RepoC上執行諸如“ git fetch RepoAgit fetch RepoB ”之類的操作,以便它可以反映我們所做的更改。

從理論上講,一個倉庫可以跟蹤不同遠程和分支機構的倉庫的無限數量。

假設RepoA的網址是git://host/repoa.git而RepoB的網址是git://host/repob.git 每個都有三個分支,例如masterfeaturerelease

在RepoC中,我們可以創建兩個遙控器。

git add remote origina git://host/repoa.git
git add remote originb git://host/repob.git

接着

git fetch --all

可以跟蹤兩個存儲庫中的所有分支。

但是,這種方法存在一些問題。

  1. 您只能檢出這些分支之一,這意味着您不能在同一工作樹中使用2個回購代碼。
  2. 從遠程跟蹤分支簽出/創建本地分支時,需要仔細命名它們,以免混淆自己。
  3. 如果RepoA和RepoB具有相同名稱的標簽,則只能將其中一個標簽提取到RepoC中。

由於已將它們合並到RepoC中,因此您可以創建兩個遙控器並同時跟蹤兩個遙控器。 但是,為什么不使用兩個存儲庫來跟蹤它們呢?

看看git子模塊功能: https : //git-scm.com/book/en/v2/Git-Tools-Submodules

問候

安多尼

暫無
暫無

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

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