概述

  1. git reset: 彻底回退版本. git revert:安全撤销某次提交

git撤销

+ git reset的三种方式
  • 使用 mixed, 只会清空暂存区与本地库(撤销 git commit, 撤销 git add),工作区代码(编辑器改动代码)依然保留.
  • 使用 soft, 撤销git commit,不撤销git add,保留编辑器改动代码.
  • 使用 hard, 本地代码也会消失(撤销 git commit,撤销 git add,删除编辑器改动代码).
撤销 commit
撤销push
  • git log命令查看提交信息,获取要撤销的版本号
git log
  • git reset –mixed <版本号> 重置到指定版本的提交
git reset --mixed [版本号]
  • git push origin master –force 通过强制提交当前版本号到线上,以便达到撤销版本号的目的
git push [远程库地址别名] [分支名] --force
  • git log命令查看提交信息,获取要撤销的版本号
git log
  • git reset –soft <版本号> 重置到指定版本的提交
git reset --soft [版本号]
  • git push origin master –force 通过强制提交当前版本号到线上,以便达到撤销版本号的目的
git push [远程库地址别名] [分支名] --force

git 回退

# 撤销一次合并提交,提交记录创建了一个新的提交.
# -m 1: 指定了“主父提交”(mainline parent).
# 主父提交: 合并提交有两个父提交:一个是你所在的分支(通常是 main 或 master),另一个是你合并进来的分支。
# -m 1 表示保留第一个父提交的内容,也就是你原来的分支,把合并进来的内容撤销掉.
git revert -m 1 <merge-commit-id>