刚刚的 push 有误,想要撤回
# 刚刚的 push 有误,想要撤回
# 问题描述
出于某种原因,不小心把错误的或者不完整的代码 commit 并且 push 到了远程,可能会影响到远程上代码的正确性。
Git 提供了撤回远程代码的方法。
# 解决方案
按下面的步骤进行:
git log
查看提交记录,找到需要撤回到的提交 id(即有问题的那次提交的上一个 commit)。git reset --soft [commit-id]
,id 为需要回退到的 commit-id。git push origin [本地当前分支名] --force
,强制提交当前版本号
这个时候查看本地和远程的 log,发现有错误的那次记录已经查不到了,表示撤销成功了。
注意:关于 git reset
--hard 会丢弃本地修改,请谨慎使用,否则你辛苦写的代码会全部丢失。
- --soft 撤销 commit,保留工作区的代码变更,不会撤销 git add
- --mixed 撤销 commit,保留工作区的代码变更,撤销 git add
- --hard 撤销 commit,删除工作区的代码变更,撤销 git add
(完)