Ada*_*sen 112 git vim diff patch
说我得到了一个补丁git format-patch
.该文件基本上是一个带有一些元数据的统一差异.如果我在Vim中打开文件,我可以看到哪些行已被修改,但我看不到更改行中的哪些字符不同.有没有人知道(在Vim或其他一些在Ubuntu上运行的免费软件)可视化每个角色的差异?
可视化每个字符差异的计数器示例是在执行时vimdiff a b
.
更新时间:2010年12月12日星期五22:36:23
diffpatch对您使用单个文件的情况很有帮助.
2016年6月16日星期六17:56:10更新
在git 2.9中查看diff-highlight.这个脚本正是我最初寻求的.
yin*_*ted 161
在git中,您可以在不提交的情况下进行合并.首先合并您的补丁,然后执行:
git diff --word-diff-regex=.
Run Code Online (Sandbox Code Playgroud)
注意等号后面的点.
ntc*_*tc2 128
这里有一些版本的输出噪音比git diff --word-diff-regex=<re>
输入噪音少,而且输入要少,但相当于git diff --color-words --word-diff-regex=<re>
.
简单(突出显示空间变化):
git diff --color-words
Run Code Online (Sandbox Code Playgroud)
简单(突出显示单个字符更改;不突出显示空间更改):
git diff --color-words=.
Run Code Online (Sandbox Code Playgroud)
更复杂(突出显示空间变化):
git diff --color-words='[^[:space:]]|([[:alnum:]]|UTF_8_GUARD)+'
Run Code Online (Sandbox Code Playgroud)
一般来说:
git diff --color-words=<re>
Run Code Online (Sandbox Code Playgroud)
<re>
为了识别变化,定义"单词"的正则表达式在哪里.
它们的噪音较少,因为它们会改变变化的"单词",而使用仅仅--word-diff-regex=<re>
围绕匹配的"单词"和彩色-/+
标记.
Jus*_*yes 44
git diff --color-words="[^[:space:]]|([[:alnum:]]|UTF_8_GUARD)+"
Run Code Online (Sandbox Code Playgroud)
上面的正则表达式(来自Thomas Rast)在标点符号/字符级别上分离差异片段(虽然没有像噪声一样--word-diff-regex=.
).
我在这里发布了结果输出的屏幕截图.
更新:
这篇文章有一些很好的建议.具体来说,contrib/
git repo 的树有一个diff-highlight
perl脚本,显示细粒度的高光.
快速入门使用它:
$ curl https://git.kernel.org/cgit/git/git.git/plain/contrib/diff-highlight/diff-highlight > diff-highlight
$ chmod u+x diff-highlight
$ git diff --color=always HEAD~10 | diff-highlight | less -R
Run Code Online (Sandbox Code Playgroud)
leg*_*cia 12
鉴于你在问题中引用了Vim,我不确定这是否是你想要的答案:)但是Emacs可以做到这一点.打开包含DIFF文件,确保您在是diff-mode
(如果该文件名为foo.diff
或foo.patch
自动发生这种情况,否则型M-x diff-mode
RET),请你有兴趣,并击中了大块C-c C-b的refine-hunk
.或者一次一个地翻阅文件M-n; 这将自动完成精炼.
小智 6
如果您不反对安装NodeJS,则有一个名为“ diff-so-fancy”的软件包(https://github.com/so-fancy/diff-so-fancy),该软件包非常易于安装且运行完美:
npm install -g diff-so-fancy
git diff --color | diff-so-fancy | less -R
Run Code Online (Sandbox Code Playgroud)
编辑:刚刚发现它实际上是官方diff-highlight的包装...至少像我这样的疏水体安装起来更容易,并且GitHub页面有很好的记录:)
归档时间: |
|
查看次数: |
26958 次 |
最近记录: |