我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
在cygwin中我得到了这个部分
On branch develop
Your branch is up-to-date with 'origin/develop'.
但后来我得到了数百个未提交的文件列表。为什么我会得到不同的结果?我在同一个仓库的同一个目录中,结果应该是一样的。
答案 0 :(得分:6)
这很可能是由于两个Git配置之间的差异。混帐 使用许多配置设置来告诉它如何表现如何 处理DOS和Unix风格的行结尾之间的差异。其中包括:
core.autocrlf
core.ignorecase
core.eol
有关这些和其他配置选项的详细信息,请参阅git config --help
。
您应该在两个系统上运行以下命令并比较配置设置:
git config --system --list
git config --global --list
请注意,全局设置优先于系统设置。 系统设置是为系统中的每个用户设置的(Cygwin中为/etc/gitconfig
),而全局设置仅适用于您的用户帐户(~/.gitconfig
在Cygwin上)并适用于您的所有存储库。
另外:您还可以运行git config --local --list
来查看配置
存储库本地的设置 - 但这些设置是相同的
Cygwin和MSys Git。