有时(实际上经常)我发现在拉取后我会在工作目录中进行一些未分阶段的更改。不知道为什么它们在那里,因为我当然没有编辑它们中的任何一个。
git reset --hard HEAD
diff 无法在这些文件上显示任何差异,而且为了让事情变得更奇怪,即使我使用or ,它们也不会消失git checkout -- <file>
。
谁能解释为什么以及如何在不提交的情况下摆脱它们?我怀疑它与行尾问题有关,但无法确认。
以下是我所做的:
拉后,我做了一个git status
,它显示:
# On branch mavenize
# Changes not staged for commit:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
# modified: build/build.sh
# modified: build/ibuild.sh
然后我做了一个git reset --hard HEAD
,它显示:
HEAD is now at b2d707e add maven pom
然后git status
,它显示与以前相同的结果。
我正在使用 Windows,在 .gitconfig 中,autocrlf 设置为“true”