[英]How to revert part of changes in the previous commit
在之前的git commit
中,我添加了一個新文件(我們稱之為 C)並對文件 A 和文件 B 進行了一些更改。
有沒有辦法刪除文件 C 並恢復git commit --amend
對文件 A 所做的更改?
聽起來您最想恢復提交但保留對一個文件的更改。
首先,執行 git 還原,但保留更改:
git revert -n HEAD
然后取消暫存您不想還原的更改(文件 B)
git reset HEAD -- B
並丟棄未分級的更改:
git checkout --.
這應該保留分階段更改以恢復對文件 A 和 C 的更改。 然后您可以根據需要提交(如果尚未在其他地方推送,則新提交或修改先前的提交)。
您可以重置為之前的提交並嘗試再次執行您真正想要的操作。
git reset HEAD~1
git add A B
git commit ...
既然你問的是git commit --amend
我假設這些更改只是本地的。 如果更改已經在遠程倉庫中(又名推送),那么最好在單獨的提交中刪除C
。
git rm C
git commit -m "Removing C"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.