Git:撤销 commit 提交或撤销对远程仓库的push操作 |
您所在的位置:网站首页 › git撤销push文件 › Git:撤销 commit 提交或撤销对远程仓库的push操作 |
一、撤销push 1. 执行 git log 查看提交日志,获取需要回退的版本号 ID 2. 执行 git reset –-soft ,如 git reset --soft 9d8c980edacd71410ed655,重置至指定版本的提交,达到撤销提交的目的 3. 然后执行 git log 查看提交日志 此时,已重置至指定版本的提交,log中已经没有了需要撤销的提交 git reset 命令分为两种: git reset –-soft 与 git reset –-hard ,区别是: git reset –-soft 表示只是改变了HEAD的指向,本地代码不会变化,我们使用git status依然可以看到,同时也可以git commit提交。 git reset –-hard直接回改变本地源码,不仅仅指向变化了,代码也回到了那个版本时的代码。 4. 执行 git push origin 分支名 –-force ,强制提交当前版本号。 查看github commit 记录,对应的commit记录也撤销了 至此,撤销push提交完成 二、撤销 commit 提交 1. 执行 git log 查看需要撤销的commit的前面一个提交版本的id; 2. 执行 git reset --hard commit_id ,该commit_id为需要撤销的commit的提交的前面一个提交的版本,即需要恢复到的提交的id,重置至指定版本的提交,达到撤销提交的目的 3. 执行 git log 查看提交日志,commit提交已撤销 三、撤销 commit 记录细节 写完代码后,执行完 commit 后,又想撤回 commit,怎么办? git reset --soft HEAD^ // 这样就成功的撤销了 commit 记录,回退到了指定版本 1 注意,仅仅是撤回 commit 操作,您写的代码仍然保留。 HEAD^的意思是上一个版本,也可以写成HEAD~1 如果你进行了2次commit,想都撤回,可以使用HEAD~2 // 上两个版本 关于commit的参数 –mixed 意思是:不删除工作空间改动代码,撤销 commit,并且撤销 git add . 操作 这个为默认参数 git reset --mixed HEAD^ 和 git reset HEAD^ 效果是一样的。 –soft 不删除工作空间改动代码,撤销commit,不撤销git add . –hard 删除工作空间改动代码,撤销commit,撤销git add . 注意完成这个操作后,就恢复到了上一次的commit状态。 如果commit注释写错了,只是想改一下注释,只需要: git commit --amend 此时会进入默认vim编辑器,修改注释完毕后保存就好了 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |