场景
需要回退最近的 N 次提交,但希望文件修改保留在工作目录中(变为未提交状态),方便重新编辑或重新提交。
命令
# 回退最近 N 次提交,修改保留在工作区(unstaged)
git reset --mixed HEAD~N
# 或直接回退到指定 commit
git reset --mixed <target-commit>
# 如果连带远程也想清理
git push --force origin <branch>
2026/7/10大约 1 分钟
需要回退最近的 N 次提交,但希望文件修改保留在工作目录中(变为未提交状态),方便重新编辑或重新提交。
# 回退最近 N 次提交,修改保留在工作区(unstaged)
git reset --mixed HEAD~N
# 或直接回退到指定 commit
git reset --mixed <target-commit>
# 如果连带远程也想清理
git push --force origin <branch>