尝试比较具有相同结构的块时,通常会在html / css中出现问题。示例: 初始提交
现在让我们向“ someblock”和新类“ someotherblock”添加新参数。 结果
预期结果:
1 1 .someblock
2 2 height:100%;
3+ width:100%;
3 4 }
5+.someotherblock{
6+ height:100%;
7+}
Run Code Online (Sandbox Code Playgroud)
有什么办法可以使git无法理解更改的“逻辑”?
要认识到Git不会是很重要的,真的可以不,你看究竟你做了什么。(也许你加括号,然后再添加内容,顺序,在这种情况下,向您展示一下做这不得不说“先加两个大括号,然后在中间添加内容”。)相反,Git的根本产生至少一组告诉计算机的指令如何将“以前存在的内容”更改为“现在应该存在的内容”。
Git程序员试图使“计算机易于理解”的指令对人类也有些敏感,但是对此的答案是:
有什么方法可以使git理解更改的“逻辑”?
没有”。
耐心的差异(请参阅吉拉的答案)可以在某些情况下提供帮助,尤其是那些Git在仅由开括号或闭括号等组成的行上进行同步的情况。
Git 2.9添加了所谓的“压缩启发式”(在此稍作介绍),但是它需要在更改区域上方留空行。这句话,“上面的一个空行”,是指一个空行,和以上:压实启发式不相信一个文件就足够顶(虽然在我看来,这应该相信这一点)。压缩启发式方法产生了更大的变化,尽管对我而言,扭曲源以使VCS更好地显示差异的想法至少令人讨厌。
1 “最小”,指的是尽可能少的“删除X”和“添加Y”指令。尽管Git确实具有面向字的diff,但Git并未考虑通常为线的X和Y的长度。领带— Git可以说“在此处删除四行,然后在此处添加四行”,然后上下移动四行,由于使用了算法,因此被打破,改为“最远向下”,这就是为什么压缩启发式仅尝试转移了。
git diff --histogram这就是您正在寻找的。它将以更易于理解的方式显示这样的更改。它解决了 git diff 显示括号(大括号)“错误”的问题。
请参阅“git diff --patience”和“git diff --histogram”有什么区别?
| 归档时间: |
|
| 查看次数: |
1228 次 |
| 最近记录: |