git 撤销远程提交

发布时间 2023-06-11 21:35:29作者: 灵火

在有些情况下(比如提交内容错误、提交信息有误、提交的不够完美),可能我们需要去撤销自己之前的 push 请求。

使用 git reset

  1. 首先撤回到上一版本的 commit 。
    git reset --soft HEAD~2
  2. 此时通过 git status 查看自己的状态并通过(git add/rm/restore)修改为合适的内容,再次 commit。
    git commit -m "project review"
  3. 使用 -f/--force 强制 push 到 remote 就大功告成。
    git push -f origin master

note: 此方法会导致你之前的错误信息被替换成现在你提交的信息。

使用 git rebase

  1. git rebase -i HEAD~2
  2. 在打开的 vim 编辑器里自己先选择好要改的分支,然后在那一行将“pick”修改为“edit”
  3. git commit --amend "project review"
  4. git rebase --continue
  5. git push --force origin master

note: 这种方法不会覆盖之前的提交信息。