为什么我在cygwin中使用git bash(msy​​sgit)和git获得不同的结果?

Fel*_*els 3 git cygwin

我alyways使用git bash,但现在我必须改为cygwin,因为我需要wget和其他东西,所以我认为我可以使用内置git,因为它更新.

git bash是版本1.9.4-preview,cygwin中的版本是2.1.4版本.我有一个使用git bash工作的克隆回购.我承诺推动一切,我在开发分支.当我使用"git status"时,我得到了这个:

On branch develop
Your branch is up-to-date with 'origin/develop'.

nothing to commit, working directory clean 
Run Code Online (Sandbox Code Playgroud)

在cygwin中,我得到了这一部分

On branch develop
Your branch is up-to-date with 'origin/develop'.
Run Code Online (Sandbox Code Playgroud)

但后来我得到了数百个未提交的文件列表.为什么我会得到不同的结果?我在同一个仓库中的同一个目录中,结果应该是一样的.

Ant*_*ica 6

这很可能是由于两个Git配置之间的差异.Git使用了许多配置设置来告诉它如何处理如何处理DOS和Unix风格的行结尾之间的差异.这些包括:

  • core.autocrlf
  • core.ignorecase
  • core.eol

有关git config --help这些和其他配置选项的详细信息,请参阅.

您应该在两个系统上运行以下命令并比较配置设置:

  • git config --system --list
  • git config --global --list

请注意,全局设置优先于系统设置.为系统中的每个用户(/etc/gitconfig在Cygwin中)设置系统设置,而全局设置仅用于您的用户帐户(~/.gitconfig在Cygwin上)并应用于您的所有存储库.

另外:您还可以运行git config --local --list以查看存储库本地的配置设置 - 但这些在Cygwin和MSys Git上都是相同的.