git - 在每个更改的行中突出显示更改的行和更改的字节

标签 git vim diff highlight word-diff

开源项目 Trac有一个出色的差异荧光笔 — 它突出显示更改的行和每个更改的行中更改的字节!参见herehere例如。

有没有办法在 bash 终端、gitvim 中使用相同的颜色突出显示(即更改行和更改字节) 差异输出(补丁文件)?

最佳答案

diff-highlight Perl contrib script生成的输出与 Trac 屏幕截图的输出非常相似,很可能 Trac 正在使用它:

screenshot of diff-highlight in use

安装:

wget https://raw.githubusercontent.com/git/git/fd99e2bda0ca6a361ef03c04d6d7fdc7a9c40b78/contrib/diff-highlight/diff-highlight && chmod +x diff-highlight

将文件 diff-highlight 移动到 ~/bin/ 目录(或者你的 $PATH 所在的位置),然后添加跟随你的 ~/.gitconfig:

[pager]
    diff = diff-highlight | less
    log = diff-highlight | less
    show = diff-highlight | less

@cirosantilli 建议的单一复制粘贴安装:

cd ~/bin
curl -O https://raw.githubusercontent.com/git/git/fd99e2bda0ca6a361ef03c04d6d7fdc7a9c40b78/contrib/diff-highlight/diff-highlight
chmod +x diff-highlight
git config --global pager.log 'diff-highlight | less'
git config --global pager.show 'diff-highlight | less'
git config --global pager.diff 'diff-highlight | less'
git config --global interactive.diffFilter diff-highlight

关于git - 在每个更改的行中突出显示更改的行和更改的字节,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5326008/

相关文章:

git - 在 Git 中将许多提交 rebase 为一个提交。我究竟做错了什么?

visual-studio - 您知道Visual Studio的任何文件比较加载项吗

Linux diff 仅在输出中获取行号

vim - 自定义vim标签栏的颜色

regex - VI正则表达式-使用当前行号替换

macos - 我怎样才能让我的 vim 表现得像我的猫?

javascript - 获取两个 json 对象的差异

git - 如何使用存储在不同计算机之间的保管箱中的 git master 同步/更新文件?

git - 是否可以在 nx 工作区中使用不同的应用程序作为 git 子模块?

Git 历史 - 通过关键字查找丢失的行