git撤销提交到本地的commit操作:
在我们写完代码进行提交的时候我们常常这样做:
git add . // 添加所有修改过的文件待提交
git commit -m "xxxx" // 提交到本地仓库
git fetch // fetch 远端代码
git rebase origin/develop // 拉取远端develop代码进行合并
git push // 推送到远程分支
在我们执行过commit之后,想撤回commit,怎么办?
// 执行如下操作
git reset --soft HEAD^ // 撤销commit 代码改变仍然保留
// HEAD^ 表示回到上一个版本(在push之前你可能有多次commit),也可以写成DEAD~1
// 如果你进行了2次的commit 都想撤回 可以使用HEAD~2
reset之后的几个参数:
--mixed:表示不删除工作控件改动过的代码,撤销commit,并且撤销git add .操作,这个为默认参数(git reset --mixed HEAD^和git reset HEAD^操作效果一样)--soft:表示不删除工作空间代码,撤销commit,保留git add .操作--hard:表示删除工作空间代码,撤销commit,撤销git add .操作,在完成这个操作之后恢复到上一次commit的状态(即有改动的代码没了)