Loading

Git回退版本 reset、revert、read-tree、restore

一、git reset

git reset [--soft | --mixed | --hard] [目标版本]

[目标版本]

  • 使用git log获取目标版本的SHA
  • 使用git reflog获取目标版本的短SHA
  • HEAD: 当前版本
  • HEAD^:上一个版本
  • HEAD^^:上上一个版本
  • HEAD~数字: 回退几个版本

--soft:版本回退,暂存区和工作区不变
--mixed(默认):版本和暂存区回退,工作区不变
--hard:版本、暂存区、工作区回退

二、git revert

git revert [目标提交]

创建一个新的提交去撤销目标提交

三、git read-treegit restore

git read-tree --reset -u [目标版本]

git 2.23.0新增git restore

git restore --source=[目标版本] --staged --worktree .

这两个本质是一样的,创建一个新的提交,将目标版本到新版本之间的全部撤销

posted @ 2025-09-24 09:58  Techenergy  阅读(21)  评论(0)    收藏  举报