如何獲得像git diff --color-words
一樣的輸出,但在Git之外?如何在Git倉庫之外使用`git diff --color-words`?
最接近的是wdiff -t
,但它強調/反轉的東西,而不是使用綠色/紅色的顏色,並且不允許指定我的空格正則表達式。
如何獲得像git diff --color-words
一樣的輸出,但在Git之外?如何在Git倉庫之外使用`git diff --color-words`?
最接近的是wdiff -t
,但它強調/反轉的東西,而不是使用綠色/紅色的顏色,並且不允許指定我的空格正則表達式。
git diff --color-words --no-index
你可以說git diff --color=always --color-words
,這將給你在輸出色彩轉義碼。你將有一定的外殼雖然解釋顏色代碼...
問題是關於在Git存儲庫之外使用它的問題。當'--color-words = always'而不僅僅是'--color-words'時,它會遺漏一些東西。 – 2011-04-12 15:12:16
@vi:對不起,你只說»outside git«,它沒有提到任何地方的存儲庫。我認爲這是關於在git旁邊的其他應用程序(例如管道)上的顏色 - 這也是»外部git«,意義上»不在默認的git工具鏈/工具集合中« – knittl 2011-04-12 16:09:40
據Jefromi評論你可以使用
git diff --color-words file1 file2
外git代碼庫了。
git diff無法工作如上所述的兩個仲裁文件。 (git版本1.7.4)。 儘管'git diff --color-words --no-index
@Manu否,'git diff'是爲此目的而設計的。 'wdiff'只是一個黑客。有時閱讀你的鏈接。 – Zenexer 2013-09-17 10:15:06
如果我是一個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 --no-index --color-words'失敗?我用它(與早期的Git版本雖然)。 – 2015-03-20 14:34:43
Git版本1.9.1:
git diff --word-diff=color fileA fileB
從手冊頁:「如果正好有兩個路徑,並給出當前倉庫外的至少一個點,git的差異會比較兩個文件/目錄。這種行爲可以通過--no-index強制。「 (很多時候你甚至不需要'--no-index'。) – Cascabel 2011-04-12 15:59:34
至少在我的git 1.9.3中,順序應該是'git diff --no-index --color-words' – PhML 2014-05-29 13:16:09
In我的'--no-index'和'--color-words'的git v1.9.3順序無關緊要(實際上我現在找不到'--no-index'時失敗了,所有)。 – 2014-05-29 17:32:03