簡體   English   中英

git:僅重做舊的提交

[英]git: redo an old commit only

我在git下有一個項目,其中最后一次提交具有正確的更改,但是必須完全還原倒數第二個提交,因此必須“忽略”從倒數第三到最后一個的應用更改。

最后的提交和倒數第二個提交沒有共同的修改文件。

我怎樣才能做到這一點?

典型的方法是

git revert HEAD^
# HEAD points to the last commit, so HEAD^ is the commit just before

它將在分支提示的頂部創建一個新的提交,其中包含您的錯誤提交所包含的反向更改。

注意:這不會重寫您的歷史記錄,在需要推送時不需要--force任何東西。

如果您在分支機構中,則可以使用cherry-pick

那是:

  • 根據上一次的良好提交創建一個新分支(例如:master)

  • 然后Cherry-pick最后一次提交: git cherry-pick <last-commit-sha>

暫無
暫無

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

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