0

有时(实际上经常)我发现在拉取后我会在工作目录中进行一些未分阶段的更改。不知道为什么它们在那里,因为我当然没有编辑它们中的任何一个。

git reset --hard HEADdiff 无法在这些文件上显示任何差异,而且为了让事情变得更奇怪,即使我使用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”

4

1 回答 1

0

在全球范围内,您可以使用git config --global core.autocrlf input,并且在每个存储库的基础上,有text 属性,您可以在上面的链接中辨别其值,但总而言之 text=auto 是一个很好的默认选项。

于 2013-06-17T16:11:46.927 回答