如何在git中过滤特定的差异

时间:2015-05-28 20:06:48

标签: git

我准备将一个分支与git合并,我希望能够看到除了我所期待的以外是否有任何变化。

我想执行:

git log -p HEAD..branch-to-merge

但我希望能够过滤掉与正则表达式匹配的差异。我有一个特定的正则表达式,我想忽略的插入和一些我想忽略的删除的正则表达式。

如果我可以过滤掉那些差异,我希望看到没有返回差异。如果返回了差异,那么我需要检查它们,因为我想要合并或者它们看起来不同于我预期的变化。

git是否有一个参数(或两个或三个)可以让我过滤出差异?

1 个答案:

答案 0 :(得分:0)

(编辑)的 一个简单的解决方案是单独处理提交。

例如,下面将迭代最近提交的哈希值(我在HEAD后面进行了一些提交测试),然后打印其差异的哈希值(似乎git show等同于{{ 1}}对于给定的提交。)不包含git log -p

nativeLibraries

您可以只为不匹配的行显示$ for f in `git log --pretty="%H" HEAD^^^^^^^^^..HEAD `; do git show $f | ( grep -q nativeLibraries || echo $f) ; done grep的输出,或进行其他处理,而不是打印哈希值。