2

在进行一些重构时,我将变量从 重命名oldNamenewName。有没有办法告诉git diff命令忽略oldName现在的差异newName?我想这样做是为了只关注其他重要的变化。如果这是可能的,我是否还可以指定多个要忽略的变量重命名,例如,忽略从oldName1tonewName1和 from oldName2to newName2... 的变化?

4

3 回答 3

2

他说得很对,不过你当然可以grep diff的输出。不是一回事,但取决于变化的幅度,也许是可用的。

git diff | egrep -v 'oldName|newName' | egrep '^[+-]'

一般来说,您应该尝试让您的提交是每个概念一次提交。您还可以使用git add -p.

于 2011-05-27T17:07:57.027 回答
1

您想使用 diff 的 -I 选项吗?这是一种方法:

    env GIT_EXTERNAL_DIFF='perl -e "system(qw{diff -I the_pattern_to_ignore -u}, @ARGV[0,1])"' git diff

这里需要 perl 来丢弃 git 提供给外部差异程序的额外参数。

于 2011-12-01T11:42:44.097 回答
0

好的。Git 的 IRC 频道中的 selckin 告诉我这是不可能的。

于 2011-05-27T17:00:29.147 回答