簡體   English   中英

添加本地存儲庫作為遠程存儲庫的子目錄

[英]add a local repository as a sub directory of remote repository

假設我有一個具有以下結構的遠程存儲庫( git@server:project.git ):

./client
./server

然后我使用git init; git add . ; git commit -m "init check in "在目錄~/myproject/test創建了一個本地存儲庫git init; git add . ; git commit -m "init check in " git init; git add . ; git commit -m "init check in " git init; git add . ; git commit -m "init check in " 我想將此本地存儲庫作為與clientserver並行的子目錄test推送到遠程存儲庫,即

./client
./server
./test

我希望本地的所有簽到歷史記錄都可以保存在遠程存儲庫中。 有沒有辦法實現這個目標? 謝謝!

通常的解決方案是使用子樹合並策略

有關詳細信息,請參閱“ Git子樹合並策略,可能沒有合並歷史記錄? ”。


另一種解決方案是將您的本地存儲庫聲明為遠程存儲庫的子模塊。

為此,您需要:

  • 將您的本地存儲庫作為遠程服務器上的獨立存儲庫推送
  • 在本地克隆git@server:project.git
  • git@server:test.git添加為子模塊

但是,如果您的測試文件與您的項目緊密相關,那可能不是最佳解決方案。

以前的答案對我不起作用(需要更多細節: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