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

如何配置git add --patch以git diff --word-diff方式展示差异?

让git add --patch默认使用单词级diff的方法

嘿,这个需求我太懂了!git add --patch的交互式暂存确实好用,但默认的行级diff有时候不够精细,想要改成和git diff --word-diff一样的单词级展示其实很简单,分两种场景给你说:

一、单次临时生效

如果你只是偶尔想用单词diff来暂存,不用改配置,直接在命令前加上环境变量就行:

GIT_DIFF_OPTS="--word-diff" git add -p

运行后你会看到和git diff --word-diff完全一致的差异展示,精准到单词的修改都会被标出来。

二、永久默认生效(分两种配置方式)

如果你想每次用git add -p都自动用单词diff,有两种配置思路:

1. 仅让git add -p生效(不影响普通git diff)

这个是更精准的方案,不会改变你平时用git diff的习惯,只针对交互式暂存生效:

# 全局配置(所有仓库都生效)
git config --global add.interactive.diffOptions "--word-diff"

# 仅当前仓库生效
git config add.interactive.diffOptions "--word-diff"

配置完之后,下次再运行git add -p,就会自动用单词diff展示变更了。

2. 全局启用单词diff(所有diff场景都生效)

如果你希望不管是git diff还是git add -p,都默认用单词级diff展示,可以直接开启全局的worddiff配置:

# 全局启用单词diff
git config --global diff.worddiff true

# 可选:设置单词diff的展示格式,比如带颜色的版本
git config --global diff.worddiff color

这样所有的diff输出都会变成单词级的,包括git diff、git show等命令。

另外要提醒下,这个配置使用的是正宗的--word-diff,和你提到的git diff --word-diff完全一致,和--color-words的实现逻辑不同,完全符合你的需求~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.20 06:53:19