我做了兩個提交而不推動它們。有多個其他提交被推送到我的分支。我還沒有拉那些提交。我想銷燬我的兩個未被推送的提交,然後只是獲取其他人提交的其他多個提交。有人可以幫我弄這個嗎?如何撤消尚未推送的提交?
我想扭轉兩個提交,一個接一個。但我想保留其他更改。這會工作嗎?
我做了兩個提交而不推動它們。有多個其他提交被推送到我的分支。我還沒有拉那些提交。我想銷燬我的兩個未被推送的提交,然後只是獲取其他人提交的其他多個提交。有人可以幫我弄這個嗎?如何撤消尚未推送的提交?
我想扭轉兩個提交,一個接一個。但我想保留其他更改。這會工作嗎?
如果您有兩次未提交的提交,而您完全不需要提交,那麼您應該重置爲要從頭開始提交然後進行提交。
所以,我假設你有以下情況。
$ git log --oneline --graph
* fde0ba4 Commit 2 (don't want)
* d7be6f3 Commit 1 (don't want)
* 7a70e45 Before my new commits (start here!)
* db58591 Even earlier
...
等等。你不想要前兩個提交,但你想要第三個提交。第一步是重置回你想從哪裏開始。
git reset --hard 7a70e45
注意,這是一個破壞性操作 - 你會失去這些提交,這些提交的內容,所以請小心這樣做!如果您不確定--hard
是否合適,請參閱the git reset
documentation。
重置後,您應該能夠沒有問題地拉動。
git pull
您希望保留哪些其他更改?他們是否做出改變? – Eran
我沒有任何變化。我想保留其他人推動的變化,這發生在我提交了我的東西(沒有推送)之後發生的 – KKendall
複製[恢復到以前的Git提交](http://stackoverflow.com/questions/4114095/revert-to- a-previous-git-commit) –