首页/开发/Git 与协作速查/git reset 取消单个文件的暂存
Git 基础与命令88 条

git reset 取消单个文件的暂存

带路径参数时只把该文件移出暂存区、不移动分支指针,等价于 git restore --staged 的效果。

Git 与协作速查开发更新于 2026-10-12
用途按文件取消暂存
语法git reset [<提交>] -- <路径>
关键差别带路径时不移动 HEAD

常用示例

常用示例
git reset HEAD -- app.py
git reset -- src/legacy/
git status --short
不带路径的 reset 会移动分支指针;带路径的 reset 只动索引,两种形态语义不同。

易错点

  • 参数写成 HEAD~1 会真的回退提交,操作前确认写的是 HEAD 还是版本号
  • -- 分隔符可以避免路径名与分支名混淆,含同名文件时必要

数据来源与参考

  • Git 官方文档:git-reset(路径参数形态)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌