文章

git强制恢复到某一个版本

git强制恢复到某一个版本

恢复到某一个版本

这个会删除回退版本的所有提交。

查看提交历史

首先,使用 git log 查看提交历史,找到你想要恢复到的版本的提交哈希(commit hash)。

1
git log --oneline
选择恢复方式

git reset 有几种模式,最常用的是 --soft--mixed--hard

  • --soft:只移动HEAD指针,不改变工作区和暂存区。
  • --mixed(默认):移动HEAD指针,并将更改的文件放入暂存区。
  • --hard:移动HEAD指针,并丢弃所有更改。

根据你的需求选择合适的模式。

执行 git reset

使用以下命令将当前分支恢复到指定的版本:

1
git reset --<mode> <commit-hash>

例如,如果你想使用 --hard 模式恢复到提交 a1b2c3d

1
git reset --hard a1b2c3d

同步到远程

1
git push --force

撤销某一个提交(生成反向提交)

image-20250724225648537

找到要撤销的提交
1
git log --oneline  # 找到需要撤销的提交哈希
执行撤销操作
1
git revert a1b2c3d  # 撤销指定提交(生成新提交)
处理冲突(如果有)

若撤销导致冲突:

1
2
3
4
5
# 1. 手动解决冲突文件
# 2. 添加修复后的文件
git add .
# 3. 继续完成revert
git revert --continue
推送到远程
1
git push origin main  # 正常推送新生成的撤销提交

从某一个提交创建新分支继续开发

1
git checkout -b new-feature  # 从历史点创建新分支
本文由作者按照 CC BY 4.0 进行授权