Tricks经历了一次错误的commit,想要撤回123456789101112131415161718192021222324git log # 查看上次commit的完整hash字串git reset <arg1> <hash字串> # 撤回commit,<arg1>有参数--soft、--hard、--mixed可选,区别为# --soft 文件还保存在git里,可以再reset回来# 修改前 --> 修改后# (F) (F)# A-B-C A-B-C# ↑ ↑# master master## --hard 文件直接被删去,慎用!!!# 修改前 --> 修改后# (F) (F)# A-B-C A-B# ↑ ↑# master master## --mixed 文件未被删去,就在本地workspace里,处于未被add的状态(推荐)# 修改前 --> 修改后# (F) (F)# A-B-C A-B-C# ↑ ↑# master master## 注:(F)指的是磁盘里此时实际的文件处于哪个版本