我對代碼庫做了一些更改。在我能夠完成我正在開發的功能之前,我必須將當前的分支切換到主控以演示某些功能。但只是使用「git checkout master」保留了我在開發分支中所做的更改,從而破壞了master中的一些功能。因此,我所做的是在提交消息「臨時提交」的情況下在我的開發分支上提交更改,然後爲演示簽出master。刪除一個git commit並且更改也不起作用
現在我已完成演示並重新開始工作在我的開發分支上,我想要刪除「臨時提交」,同時仍保留所做的更改。那可能嗎?
我對代碼庫做了一些更改。在我能夠完成我正在開發的功能之前,我必須將當前的分支切換到主控以演示某些功能。但只是使用「git checkout master」保留了我在開發分支中所做的更改,從而破壞了master中的一些功能。因此,我所做的是在提交消息「臨時提交」的情況下在我的開發分支上提交更改,然後爲演示簽出master。刪除一個git commit並且更改也不起作用
現在我已完成演示並重新開始工作在我的開發分支上,我想要刪除「臨時提交」,同時仍保留所做的更改。那可能嗎?
是的,你正在尋找的命令是git reset
git reset HEAD^ # HEAD^ is one of the numerous ways to say :
# the parent of current commit
你可以這樣做: git的復位--soft HEAD^
這將重置最後一次提交你做和保存所有在提交中完成的更改。但是你的變化仍然會上演。
如果你想取消它們,你也可以使用git reset以後取消所有文件。您的更改仍然存在。
可能的重複[如何在進行本地提交後再次取消我的文件?](http://stackoverflow.com/questions/6682740/how-can-i-unstage-my-files-again-after-使-A-本地提交) – LeGEC