1、git reflog 可以查看所有分支的所有操作記錄(包括已經被刪除的 commit 記錄和 reset 的操作)
2、git log 可以顯示所有提交過的版本信息
二者區別:用git log則是看不出來被刪除的commitid,用git reflog則可以看到被刪除的commitid
3、git reset --hard HEAD 切換到版本號為HEAD的那個版本,例如
git reset --hard 0fc2a4d
那么會切換到版本號為0fc2a4d的那個版本,那個版本的提交信息為解決沖突

4、執行完上面的命令之后,會切換到0fc2a4d那個版本,后面的亂碼是“解決沖突”四個字的亂碼

5、git push -f origin test 強制推送到遠程分支,-f 強制,origin 遠程倉庫名,test 遠程分支名

6、一般情況下不建議這樣使用,因為回滾到指定版本,別人提交的代碼有可能會被回滾。使用強制推送原因,遠程的分支被搞壞了,自己的和別人(多人)的代碼都不完整了,或者別人(多人)的代碼被誰給覆蓋了,或者誰提交之后項目代碼問題比較大,而且再次修改代碼也無法拯救,那么git reflog選定一個都可以接受的版本回滾,少部分別人被回滾的代碼,重新提交即可
