【问题标题】:How can I do case insensitive git diffing while also doing `git diff --color`?如何在执行“git diff --color”的同时进行不区分大小写的 git diffing?
【发布时间】:2011-06-27 06:37:05
【问题描述】:

是否可以在不区分大小写的git diff 的同时执行git diff --color-words?还是我在做git diff --color-words 时需要使用外部差异程序?

(注意:如果你想要的只是 git diff 不区分大小写,请转到这个问题How to perform case insensitive diff in Git

【问题讨论】:

  • 在这种情况下,“case”这个词没有出现在手册页中这一事实对你来说并不是一个好兆头......
  • @Anto:可能,但这个问题是 2 岁以上...

标签: git case-insensitive git-diff


【解决方案1】:
GIT_EXTERNAL_DIFF='diff -ipu "$2" "$5" #' git diff --ext-diff

或者,在没有我在那里使用的 # hack 的情况下以一种更好的方式:

echo 'diff -ipu "$2" "$5"' >myscript; chmod a+x myscript;
GIT_EXTERNAL_DIFF='./myscript' git diff --ext-diff

我同意如果 git-diff 只有一个 -i 选项会更好...

【讨论】:

  • 这不会让你获得颜色,或单词差异... wdiff 会获得后者,但不是彩色形式。
  • 将其与调用 wdiff 并应用颜色的脚本挂钩,例如 cwdiff
  • 这看起来很有希望,但是如果存储库中有二进制文件,它会失败并显示fatal: the external diff application disapeared 并且不显示任何输出。
  • 在 msysgit 中,我在第一个文件后得到 fatal: external diff died, stopping at path/to/file.txt
  • 您可以在脚本末尾添加一个尾随| cat 以避免失败消息,如 [stackoverflow.com/questions/255202/… 中所述
【解决方案2】:

我想出了一种方法来执行不区分大小写的差异,尽管没有像 OP 要求的那样使用 --color-word 选项。请参阅my answer 我自己的问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-08-27
    • 2012-02-12
    • 2023-03-25
    • 2020-12-07
    • 2020-11-17
    • 2016-11-24
    • 1970-01-01
    相关资源
    最近更新 更多