git diff忽略文件中的模式

nik*_*laj 5 git diff design-patterns ignore

我对git diff有问题。首先让我介绍一下历史。

刚从客户那里得到一个我不受欢迎的项目。问题在于它们的scm中有2个分支。这两个分支已经很久没有合并了,现在必须合并它们。大多数更改都是微不足道的,因此通过git合并仅需要大约30分钟。

但是,我的客户不相信合并过程可以自动化。因此,他们希望通过具有一个差异列表来查看合并,该差异列表包含正在使用的所有4个版本的代码之间的差异(基本和版本a,基本和版本b,a和b等)。

这也很琐碎,但是问题来了。由于分支之间的更改很多,因此差异列表非常长(每个差异列表约50Mb),因此这些列表无用。现在,我的客户希望将更改分组。

这些“分组差异”中有4个主要组。我想使git diff能够忽略该时间上的各个组。

g1:很多斜线改变了方向。因此,我想git解释/和\类似。我发现了如何使git忽略整行(如果它包含斜杠),但这不是我想要的,因为路径(斜杠来自何处)可能已更改。

g2:这个问题在结构上与上面非常相似,只是由于我涉及了更多的符号。日志记录中有许多格式已更改。主要与丹麦字母有关,即“æ”已更改为“æ”,“ø”已更改为“ø” 等等

g3:很多评论已更改。客户担心某些“ * /”可能没有合并。我看不到如何验证这一点。你们有专家有想法吗?

g4:以上未提及的所有内容。这被认为是真正的变化。

hay*_*uhl 1

您也许可以编写一些内容来解析差异并删除或删除其中一些更改。一些正则表达式魔法可能会帮助你。我认为这最适用于 g1 和 g2。

不知道如何处理 g3。