How can I use `git diff --color-words` outside a Git repository?

泪湿孤枕 提交于 2019-12-20 08:46:15

问题


How can I get output like in git diff --color-words, but outside Git?

Closest thing is wdiff -t, but it underlines/inverts things instead of using green/red colours and does not allow specifying my whitespace regex.


回答1:


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




回答2:


According to a comment from Jefromi you can just use

git diff --color-words file1 file2

outside of git repositories too.




回答3:


Git version 1.9.1:

git diff --word-diff=color fileA fileB




回答4:


you can say git diff --color=always --color-words, which will give you the color escape codes in the output. you are going to have some shell to interpret the color codes though …




回答5:


If I'm inside a git repository (git v2.3.3) :

  • git diff --color-words doesn't work (no output)
  • git diff --no-index doesn't accept --color-words nor --color arguments

Using wdiff is possible, configured to use colors, rather than underlined :

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

Source : https://www.gnu.org/software/wdiff/manual/html_node/wdiff-Examples.html (modified to use foreground colors rather than background colors)

Hope it helps.



来源:https://stackoverflow.com/questions/5637311/how-can-i-use-git-diff-color-words-outside-a-git-repository

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