2013-05-22 33 views
1

作为git的新手,我正在调查我可以做的各种重置。git reset --soft改变我的索引

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

因此,我已经对过去的提交进行了软重置。

既然我的索引或工作目录都不应该改变,我现在预计git status会说我有未跟踪的更改,因为我的工作目录中的文件将比回购中的文件更新我刚刚回去了。

但它告诉我,我的修改文件在索引中?怎么会这样?我没有犯过他们。软复位是否会改变索引?

回答

1

git reset --soft不会更改索引,因此除非您提交的内容与重置前实际在索引中的内容相同,否则您的索引将与新提交的HEAD不同。 HEAD和你的索引之间的区别是上演的变化,根据定义。

由于您的索引没有更改,如果您没有任何未分离的更改,您仍然没有未分期更改。你的工作树和索引之间的区别与以前一样;没有改变。

(这听起来像你期望究竟是什么标准reset - 或reset --mixed没有:移动你的HEAD,然后更新您的索引,以匹配新HEAD