如何將Git存儲庫的子目錄作爲新的Git存儲庫發佈給外部用戶?如何將Git存儲庫的子目錄作爲新的Git存儲庫發佈給外部用戶?
我有一個Git存儲庫~/repo.git
;它有子目錄~/repo.git/sub1
和~/repo.git/sub2
。我現在需要向一組朋友發佈/導出/發佈(或任何適當的動詞)sub1
,以便他們可以在sub1
中查看和使用程序和數據。如果他們可以將我在repo.git
中完成的更新推送到此公佈的sub1
將會很好。
這是什麼解決方案?
如何將Git存儲庫的子目錄作爲新的Git存儲庫發佈給外部用戶?如何將Git存儲庫的子目錄作爲新的Git存儲庫發佈給外部用戶?
我有一個Git存儲庫~/repo.git
;它有子目錄~/repo.git/sub1
和~/repo.git/sub2
。我現在需要向一組朋友發佈/導出/發佈(或任何適當的動詞)sub1
,以便他們可以在sub1
中查看和使用程序和數據。如果他們可以將我在repo.git
中完成的更新推送到此公佈的sub1
將會很好。
這是什麼解決方案?
git subtree
命令可用於執行此操作。
該文檔在git-subtree.txt
。
我會使用子模塊來管理這種關係。他們捕捉你正在使用的確切版本。您可以使用篩選器分支將您的私人分支移出此回購的克隆。然後,只需刪除您的倉庫中的該目錄,並添加指向您剛剛創建的新倉庫的子模塊。
子模塊似乎不完全適合我的用例,因爲我沒有將外部項目引入到我的項目中,而是將我的項目的一部分作爲單獨的和公開的項目公開。 – qazwsx
'子樹'應該做你所描述的,但如果你的朋友使用'sub1'獨立,也許你也應該?然後你可以擁有相同的工作流程。在這種情況下,您可以使用'git subtree'或'git filter-branch'來執行原始分割。 – jbowes