Git diff疯了吗?

时间:2010-06-08 14:48:43

标签: git msysgit tortoisegit git-diff

我正在试图弄清楚我当地的Git回购发生了什么。

  1. 我编辑了一个文件。
  2. Git报告所有内容在文件中发生了变化(我只更改了一个行)
  3. 起初我认为“必须是换行问题”,但事实并非如此。我在TortoiseGit做一个差异,一切都很好。我用Netbeans(git插件)做差异,一切都很好。
  4. 我重置,备份文件,修改它,再次git报告所有内容都已更改。
  5. 我在Total Commander中进行二进制比较,除了我更改的单行外,文件无差异
  6. 我再次进行硬重置。 Git告诉我它已成功完成。 Git状态仍然表示我的文件已更改。我把事情区分开来并且没有任何区别 - bug git说有。
  7. 我尝试过使用git bash和gui,结果相同(我在Windows上)。有什么线索,这里发生了什么?

2 个答案:

答案 0 :(得分:1)

Windows使用不同的换行符,当您在​​Windows环境中编辑文件时使用这些设置,然后当Git查看它时,它无法识别换行符。您可以尝试使用vi将fileformat设置为unix,它将所有换行符转换为unix样式:set ff = unix 希望有所帮助

答案 1 :(得分:0)

在我提交了相关文件之后,我重新启动了工作站,现在一切都按顺序排列(我已经尝试在同一个repo中编辑其他文件并且差异很好)。

不知道发生了什么。我把这个写成“Windows”......