Как использовать `git diff --color-words` вне репозитория Git?

Как получить вывод как в git diff --color-wordsа за пределами Git?

Ближайшая вещь wdiff -t, но он подчеркивает / инвертирует вещи вместо использования зеленого / красного цветов и не позволяет указывать мое регулярное выражение пробела.

5 ответов

Решение

git diff --color-words --no-index

Согласно комментарию от Jefromi вы можете просто использовать

git diff --color-words file1 file2

вне git-репозиториев тоже.

Git версия 1.9.1:

git diff --word-diff=color fileA fileB

Если я в репозитории git (git v2.3.3):

  • git diff --color-words не работает (без вывода)
  • git diff --no-index не принимает --color-words ни --color аргументы

Использование wdiff возможно, настроено на использование цветов, а не подчеркнуто:

wdiff -n \
  -w $'\033[30;31m' -x $'\033[0m' \
  -y $'\033[30;32m' -z $'\033[0m' \
  … | less -R

Источник: https://www.gnu.org/software/wdiff/manual/html_node/wdiff-Examples.html (изменен для использования цветов переднего плана, а не цветов фона)

Надеюсь, поможет.

Ты можешь сказать git diff --color=always --color-words, который даст вам коды выхода цвета на выходе. у вас будет какая-то оболочка для интерпретации цветовых кодов, хотя...

Другие вопросы по тегам