git reset --soft更改我的索引

时间:2013-05-22 15:14:56

标签: git git-reset

作为git的新手,我正在调查我可以做的各种重置。

我的印象是git reset --soft不会改变索引或工作目录,它只会改变仓库的头部。

所以我过去曾对提交执行了软重置。

由于我的索引或工作目录都不应该更改,我现在希望git status说我没有更改,因为我的工作目录中的文件比那些更新在我刚回去的回购中。

然而它告诉我我的修改过的文件在索引中?怎么会这样?我没有犯过他们。软重置是否会改变索引?

1 个答案:

答案 0 :(得分:1)

git reset --soft不会更改索引,因此除非您要移动的提交具有与重置前索引中实际内容相同的内容,否则您的索引将与新{{1}不同提交。根据定义,HEAD与您的索引之间的差异是分阶段更改

由于您的索引未更改,如果您没有任何未暂停的更改,您仍然没有未分级的更改。您的工作树和索引之间的差异将与以前相同;两者都没有改变。

(听起来你所期望的实际上是标准HEAD - 或reset的作用:移动reset --mixed,然后更新索引以匹配新HEAD }。)