Git Commit命令撤销操作
在某些时候,通过
git commit
命令讲代码提交到了暂存区,但还未推送至远程仓库需要进行撤销,可以使用git reset
命令来完成
文章目录
- [Git Commit命令撤销操作](#Git Commit命令撤销操作)
- [1. git commit 撤销操作](#1. git commit 撤销操作)
- [2. 撤销多次想回到某一次撤销](#2. 撤销多次想回到某一次撤销)
1. git commit 撤销操作
- 如果只是想要撤销最近一次的提交,但保留更改内容,可以使用以下命令
这将会将 HEAD 移动到上一个提交,并保留更改内容在工作目录中。你可以重新提交或者修改更改后再次提交。
shell
git reset HEAD~1
- 如果你想要完全撤销提交并且丢弃所有更改内容,可以使用以下命令
shell
git reset --hard HEAD~1
2. 撤销多次想回到某一次撤销
使用
git reset
命令可以将 HEAD 指向的分支移动到指定的提交,如果需要恢复被 reset 的提交,可以使用git reflog
命令查看历史操作记录,找到之前的提交的哈希值,然后使用git reset --hard <commit>
将 HEAD 恢复到指定的提交。
- git reflog
shell
E:\boot\yuan-demo> git reflog
82523fc (HEAD -> master, origin/master, origin/HEAD) HEAD@{0}: reset: moving to HEAD~1
ee70e2e HEAD@{1}: commit: 'add_bin.zip'
82523fc (HEAD -> master, origin/master, origin/HEAD) HEAD@{2}: commit: add deploy.zip
30503a5 HEAD@{3}: commit: 'initadd'
4d34d24 HEAD@{4}: clone: from https://gitee.com/xxx/yuan-demo.git
E:\boot\yuan-demo>
- 指定要回到某一撤销的位置
如果这里要回到
30503a5 HEAD@{3}: commit: 'initadd'
,可以使用下面命令
shell
git reset --hard 30503a5