是什么导致我在 Github 的 diff 中出现行偏移问题?

What is causing my line offset problem in Github's diff?

我需要一些帮助来找出回购中的差异有什么问题。我做了两个相对简单的更改,一个是简单地删除 .css 文件中的 @media 规则,在此提交的差异中很容易看到:https://github.com/TryGhost/Casper/commit/b12f5206eb5c63bd7faeed8a5c38089518a38695

看起来完全合理,每个选择器在差异中匹配得很好。

当我修复格式并取消缩进选择器时,diff 再次看起来很棒,每一行都与其对应的选择器很好地匹配:

https://github.com/TryGhost/Casper/commit/73c0befea23d6299e28280cc07b78d9da99c1c29

但是,当我将整个分支与这两个提交进行比较时,这就是一切都与 rails 相比较的地方 diff:

https://github.com/Torqu3Wr3nch/nightCasper/compare/master...Torqu3Wr3nch:darkTheme?diff=split&expand=1

我无法再对更改进行很好的并排比较。

知道为什么会发生这种情况以及如何解决它吗?我预计这是从中分叉出来的上游存储库会经常更改,所以我想让事情正常进行转发。

提前感谢您的帮助!

您的编辑器执行了自动套用格式,用空格切换了制表符。

注意:一些工具在显示差异时会忽略空格。

您在第二次提交中更改了缩进。 Githubs 默认视图不喜欢这样。 尝试 w=1 参数。 例如。 https://github.com/Torqu3Wr3nch/nightCasper/compare/master...Torqu3Wr3nch:darkTheme?diff=split&expand=1&w=1

进一步阅读: https://github.blog/2018-05-01-ignore-white-space-in-code-review/

When reviewing code, a diff with a number of trivial white space changes can create enough noise that it’s difficult to focus on code changes.