0

运行时$ git diff,输出的默认值是用减号显示删除,用加号显示添加。有没有办法将这些符号自定义为 git 命令本身中的任意符号?(而不必设置单独的配置文件。)

例如,如果我运行$ git diff --word-diff,删除的文本将显示为:

[-this text has been deleted -]

添加的文本将显示为:

{+this text has been added+}

我希望能够在 git diff 命令中指定删除应该标记为 say [-##,添加标记为 say {+##

我该怎么做?

4

1 回答 1

0

--output-indicator-xxx选项是您正在寻找的。查看文档

从文档:

--output-indicator-new=<char>
--output-indicator-old=<char>
--output-indicator-context=<char>

指定用于在生成的补丁中指示新、旧或上下文行的字符。通常它们分别是+,-和 ' '。

编辑:显然,当 时--word-diff is used,上述选项不可用。更通用的解决方法是通过管道调用sed.

例如,我将举一个例子,有很多关于的问题:git diff ... | sed -e s/\[-/[-##/[-[-##. 与原始命令相同的警告:如果该字符串是 diff 输出的一部分,则会受到影响(例如,[-some code removed [--hi--]-]将变为[-##some code removed [-##-hi--]-].

于 2021-06-29T15:33:16.903 回答