簡體   English   中英

如何僅修改最后的第二次提交或特定提交

[英]How to amend last 2nd commit or specific commit only

在我當前的分支中,我有 2 個尚未推送的提交。

mainlineBranch:
 commit 2 - recent commit
 commit 1

我的代碼更改很少,只想修改提交 1 而不會刪除提交 2。有人可以幫我嗎?

git rebase --interactive可以幫助你。

首先,存儲您未提交的更改以供以后使用( git stash )。 您的工作目錄現在應該是干凈的。 運行git rebase -i HEAD~3你的編輯器會彈出如下內容:

pick  aaaaaaa
pick  bbbbbbb
pick  ccccccc

在上面的例子中, bbbbbbb應該是你的“commit 1”,而ccccccc應該是你的“commit 2”。 將選擇更改為pickedit bbbbbbb退出編輯器。 然后你可以git stash pop到工作樹上,現在應該在提交 1 處。 使用git commit --amend修改提交 1 並使用git rebase --confinue繼續 rebase。 假設已處理沖突,您現在應該使用修改過的提交 1' 和相同的提交 2' 登陸一個新的 HEAD。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM