You need to enable JavaScript to run this app. git diff --color-words如何仅高亮字符变更而非空格分隔的单词组?
优惠活动
大模型
产品
解决方案
定价
更多

git diff --color-words如何仅高亮字符变更而非空格分隔的单词组?

解决方案

直接使用指定单字符匹配规则的diff命令即可:
git diff --color-words --word-diff-regex=.

原理说明

--word-diff-regex 参数可以自定义差异识别的「单词」分割规则,设置为.时会将每个单个字符都识别为独立的对比单元,就不会再按空格分组高亮未变更的整段内容,只会精准标记发生变化的单个字符。对你示例中的场景,只会高亮版本号的40、41部分,其余内容不会被高亮。

永久配置(可选)

如果需要长期对比这类无空格的压缩代码,可以针对特定文件类型配置默认规则,不需要每次都手动加参数:

  1. 编辑全局git配置文件~/.gitconfig(Windows系统为C:\Users\你的用户名\.gitconfig),添加如下内容:
    [diff "singlechar"]
        wordRegex = .
    
  2. 在对应项目的.gitattributes文件中添加配置,指定对应后缀的文件使用该规则:
    *.js diff=singlechar
    *.min.css diff=singlechar
    

配置完成后,后续直接执行git diff --color-words针对上述后缀的文件就会默认按单字符识别差异。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.15 06:15:05