[英]Using git to merge changes in a manually-copied directory
在工作中,我使用 git 在我們的遠程 VPS 上保留一個大目錄的備份。 因為我住在一個非常偏遠的小鎮,互聯網很差,價格昂貴,我無法通過互聯網復制這個 repo。 相反,當我開始在家工作時,我在外部驅動器上帶了一份目錄副本(不幸的是沒有“.git”子目錄)。
我對目錄的主副本中的文件進行了大約 10kb 的更改。 我想將這些合並到遠程服務器上的 git 存儲庫中,而無需通過 Internet 傳輸整個目錄。
到目前為止的步驟:
git init
git add .
git commit -m "initial"
git remote add VPS [SSH_ADDRESS]
git remote show VPS # successfully connects to remote
現在我想合並我在本地所做的 10kb 更改,而不傳輸未更改的 GB 數據。
我嘗試過但失敗的步驟:
git push VPS # can't because there are non-integrated remote changes
git fetch VPS # starts downloading GBs of data
不知道接下來去哪里 go。
一種嘗試傳輸盡可能少的數據而不使用 git 的傳輸方法的 hacky 方法,它可能有效,也可能無效:
git format-patch
)tar
或zip
)scp
或rsync
)ssh
)unzip
/ tar
后跟git apply
),修復沖突並根據自己的喜好編輯歷史這將使您的本地副本像以前一樣不同步。
假設“GB 數據”是大文件而不是很多小的更改/文件,您可以避免將它們存儲在實際的 git 存儲庫中。
有多種方法可以解決這個問題,我都沒有嘗試過,但這里有一些眾所周知的方法:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.