You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

能否优化git diff的文件差异区块分隔效果?

给Git Diff添加文件分隔装饰块的方法

要实现你想要的装饰性分隔块效果,直接用sed脚本处理Git Diff的输出即可,无需复杂配置。

直接执行命令

运行以下命令就能生成带分隔块的Diff:

git diff | sed -e '/^diff --git/ {
    x
    s/^/************************************************\n/
    p
    x
    s/^/* /
    s/$/ */
    p
    :a
    n
    /^index\|^---\|^+++/ {
        s/^/* /
        s/$/ */
        p
        ba
    }
    x
    s/^/************************************************\n/
    p
    x
}'

这个脚本会自动识别每个文件的Diff头部(diff --git、index、---、+++行),给它们加上星号包裹的上下分隔块,让不同文件的Diff区域一目了然。

配置Git别名(方便重复使用)

如果不想每次都敲长命令,可以给Git加个别名:

  1. 打开~/.gitconfig文件
  2. 在[alias]区块下添加:
diff-decorated = !git diff | sed -e '/^diff --git/ { x; s/^/************************************************\\n/; p; x; s/^/* /; s/$/ */; p; :a; n; /^index\\|^---\\|^+++/ { s/^/* /; s/$/ */; p; ba; }; x; s/^/************************************************\\n/; p; x; }'
  1. 保存后,直接输入git diff-decorated就能生成带装饰分隔的Diff了。

内容的提问来源于stack exchange,提问作者a3y3

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 18:55:01