【问题标题】:Github Desktop shows > 600 files changed, but commit shows only 290 changedGithub Desktop 显示 > 600 个文件已更改,但提交显示仅 290 个已更改
【发布时间】:2017-01-24 04:32:25
【问题描述】:

我对我的存储库进行了本地更改。 Github Desktop 显示 600 多个文件已更改。

然后我致力于我的分支。提交显示在 Github.com 上没有问题,但是只有 290 个文件显示为已更改。

我的大部分更改来自更新管理主题,其中涉及将一些文件从外部文件夹复制/替换到我的本地存储库中。

很可能这些文件中的大部分实际上并没有什么不同,但 Github Desktop 还是将它们注册为更改。也许当我提交时,Github 比较并确定“更改”的 600 多个文件中只有 290 个实际上是不同的?

我应该担心这种差异,还是上面解释的理论可能是原因?

【问题讨论】:

  • 你手动同步你的github项目了吗?
  • 在我开始进行任何更改之前,我的本地 repo 已经从 master 同步和更新。因此,更改后,我只需单击“提交到 {我的分支}”。
  • 你仔细检查了吗?如果文件非常大或二进制,Github 会隐藏差异?我过去也错过了这些差异
  • 很多文件都是二进制文件,Github 没有显示这些文件的差异。但我认为这不会影响已更改文件的数量...
  • It's likely that a large number of these files weren't actually different ...不,我对此表示怀疑。如果他们出现在变更集中,他们就不同了。一种可能是您在这里遇到了行尾问题,而其他 310 个文件在更改行尾后呈现相同。

标签: github github-for-windows


【解决方案1】:

从 GitHub 桌面打开一个 shell 并检查您的 git config -l core.autocrlf:
如果为真,则 Git 可能已自动将 eol(行尾)字符更改为 Windows 字符(\r\n)。
见“Is there a way to determine the line endings in a existing git repo?

这可以解释大量的本地更改。

【讨论】:

  • core.autocrlf = true 所以这些文件实际上并没有什么不同(除了 CR LF 和 LF)?
  • @fournines 是的:您可以使用git -c color.diff.whitespace="red reverse" diff -R -- afile 检测它,正如我的第一个链接提到的那样
猜你喜欢
  • 2014-04-13
  • 2016-03-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-06-04
  • 2017-12-04
  • 2016-04-16
  • 1970-01-01
相关资源
最近更新 更多