簡體   English   中英

是否可以嵌套git repos,但只有一個Github repo

[英]Is it possible to nest git repos, but only have one Github repo

我知道有很多關於“如何嵌套git repos”的問題,而且大多數都推薦使用子模塊。 但是,我看到的所有代碼片段都將子模塊連接到一個單獨的git url。 在我的情況下,我唯一的git遙控器是在GitHub上,但我希望子模塊在索引中不可見。 不可否認,我的理由有點淺薄; 我有超過150個回購,我想結合其中一堆,使列表更易於導航。 但是我不想失去修訂歷史。

現在我只看到兩個選項,兩者都不合適:

  1. 將所有提交歷史合並到一個樹中
  2. 保持現狀,通過Github可以查看每個倉庫。

沒有。

“GitHub repo”正好是一個Git回購。 雖然有一些方法可以使用Git實現這一目標(通過子模塊或將repos合並為一個),但是你已經將它們作為不可行的消除了。

將所有提交歷史合並到一個樹中

這就是monorepo方法,你看到大型組織(Facebook,谷歌,微軟)越來越多地使用它

微軟有一個巨大的Git 倉庫 用於Windows ,但這是因為它使用GVFS(Git虛擬文件系統)

在您的情況下,您可以嘗試合並您的 merge --squash例如,使用git子樹) (或者, 作為另一個選項,一些merge --squash

您可以像使用子樹一樣處理整個存儲庫。

我認為解決方案可能是子樹 使用子樹,您可以在中央存儲庫中開發存儲在其他存儲庫中的元素。

這意味着你可以擁有

  • 主要項目
  • 組件A.
  • 組件B.

您可以將組件A和B放在separate repository中。 有自己的自述文件等。 那些不是獨立的庫:只是項目的一部分(子樹)。

更新組件X.

要更新組件X,您只需克隆組件並進行更新即可。 但是等等,......這有點令人困惑,所以,...你可以在主git存儲庫中拉下子樹並將子樹推入其遠程。

暫無
暫無

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

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