首页/开发/Git 与协作速查/git reset --soft 只移动分支指针
Git 基础与命令88 条

git reset --soft 只移动分支指针

撤销提交但保留暂存区与工作区:改动原样停留在暂存状态,适合把多条提交合并为一条或重写提交内容。

Git 与协作速查开发更新于 2026-10-12
影响范围只移动 HEAD/分支指针
暂存区保留(改动仍是已暂存)
典型场景合并提交、重新组织提交内容

常用示例

常用示例
git reset --soft HEAD~1
git status
git commit -m 'feat: combine previous work'
撤销后直接 commit 可把两条提交并为一条;提交信息按新内容重写。

易错点

  • 撤销的是提交记录而不是文件改动,误以为改动被删是常见误解
  • 已推送的提交上执行这种改写,之后推送需要强推并通知协作者

数据来源与参考

  • Git 官方文档:git-reset(--soft)
  • Pro Git 2nd Edition · 7.7 重置揭密
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌