1. 程式人生 > >git push 之後的回退

git push 之後的回退

在一個忙碌的下午,快要下班了,辛苦了一天了將自己的程式碼提交一下吧!熟悉的命令敲完之後發現Oh,My God!提交錯專案了;完了回退一下吧!

git push 錯誤之後的回退:

git reset --hard HEAD^     先回退到前一個版本(本地)

git push origin HEAD --force    然後強制推這個改動到雲端

搞定了!

不對等等,這樣雖然修改好了但是這個專案的本地提交全沒了,這就是這個命令的弊端

既然出現了問題,有沒有好的解決方法呢?git這麼強大答案當然是有的:

git reset --soft  HEAD~1    回退到前一個版本

git reflog  檢視當前遊標指向   應該是指向上一個commit

git status 檢視當前程式碼狀態發現那些改動的狀態為  已add  未commit

此時可以修改重新提交或者

git reset HEAD <file> 撤回add

git  checkout --<file> 撤回某檔案到和HEAD相同

此時git push --force  強推  結束!