在git中更改分支会导致更改文件

Joe*_*Joe 8 git branch

当我在git中的分支之间切换时,我发现即使没有进行更新,文件也会被更改.这最近刚刚开始发生.

$ git status
# On branch dev
nothing to commit (working directory clean)


$ git checkout master
Switched to branch 'master'


$ git status
# On branch master
# 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:   App.Core/ViewModels/CriteriaViewModel.cs
#       modified:   App.Core/ViewModels/UserManagement/AccountTagsViewModel.cs
#       modified:   App.Core/ViewModels/UserManagement/TagViewModel.cs
#
no changes added to commit (use "git add" and/or "git commit -a")
Run Code Online (Sandbox Code Playgroud)

这些我在dev分支上更改的文件,但随后添加并提交.关于我正在做什么的任何想法会导致这个?

Von*_*onC 4

您可以检查差异是否在于这些“已更改”文件中的 eol(行尾)字符。

如果是,请确保您的 core.autocrlf 设置为 false:

git config core.autocrlf false
Run Code Online (Sandbox Code Playgroud)

这将避免结帐时的任何自动转换。

有关更多信息,请参阅“ git 用 CRLF 替换 LF ”。

如果您需要强制执行一致的 eol,请使用.gitattributes指令,如“使用文件修复 Git 存储库中的行结尾.gitattributes”中所示。