我想用遠程倉庫更新本地系統倉庫,但我不想觸及某個特定目錄myDir的內容。 請注意,此目錄稍後在主分支中進行了更新,但我想保留其舊版本。git pull:更新倉庫而不更改特定目錄的內容
這樣做的最佳方法是什麼?
感謝, 李
我想用遠程倉庫更新本地系統倉庫,但我不想觸及某個特定目錄myDir的內容。 請注意,此目錄稍後在主分支中進行了更新,但我想保留其舊版本。git pull:更新倉庫而不更改特定目錄的內容
這樣做的最佳方法是什麼?
感謝, 李
如果你不想從遠程拉來覆蓋你還沒有承諾的工作,使用stash
臨時保存你的工作。從您的工作目錄:
git stash
將採取所有未提交更改的將它們保存到外部堆棧git pull
,並改變從遠程git stash pop
或git stash apply
將您所隱藏的更改帶回工作目錄中pull
另一條提示:您可以隱藏多個工作塊,並且它們都是stac K表;使用git stash list
來查看您當前隱藏的所有項目。
如果我正確理解OP,'git stash'是在這種情況下不必要的複雜。 –
git pull
只是將git fetch
和git merge
包裹成一個。
如果你只想更新你的回購沒有合併,一個簡單的git fetch
就足夠了。
讓我試着澄清一下:我的本地分支比遠程主分支要舊。我想合併來自遠程主分支的所有更改,但希望保留某個目錄的舊版本。理想情況下,我會使用帶有「忽略目錄」標誌的pull命令。 – user429400
Git不允許進行部分簽出(正如您可能期望從SVN等系統那樣)。 –
這些更改是否要保持由特定提交引用,還是在當前分支中未提交? – Devunwired
它們在當前分支中不受支配 – user429400
您當前的分支主人或另一個分支主人? (如果是另一個,那麼你可以安全地提交它們,然後重新綁定,如果你想稍後改進你的提交。) – simich