How do I make Git diff ignore version number changes?

喜夏-厌秋 提交于 2020-04-11 04:06:32

问题


Is there a way to remove version number change noise from a Git diff like this one? Specifically if a line only contains changes from one number to another can I set up Git diff to ignore it?


回答1:


I think this can be achieved using git-diff --word-diff-regex=[^0-9] (see [^0-9] in action). For a more complex pattern you'll need a more complex regex but, except recursion, everything is possible with regex.

From Git - git-diff --word-diff-regex documentation

--word-diff-regex=

Use < regex > to decide what a word is, instead of considering runs of non-whitespace to be a word. Also implies --word-diff unless it was already enabled.

Every non-overlapping match of the < regex > is considered a word. Anything between these matches is considered whitespace and ignored(!) for the purposes of finding differences. You may want to append |[^[:space:]] to your regular expression to make sure that it matches all non-whitespace characters. A match that contains a newline is silently truncated(!) at the newline.

For example, --word-diff-regex=. will treat each character as a word and, correspondingly, show differences character by character.

The regex can also be set via a diff driver or configuration option, see gitattributes[5] or git-config[1]. Giving it explicitly overrides any diff driver or configuration setting. Diff drivers override configuration settings.

See also

  • Git - git-diff --word-diff


来源:https://stackoverflow.com/questions/49135986/how-do-i-make-git-diff-ignore-version-number-changes

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!