文字単位や単語単位で比較するには、様々な方法 (例えば、DocDiff、wdiffなど) がある。
git の diff サブコマンドはデフォルトで行単位、--word-diff オプションを渡すと単語単位、--word-diff-regex オプションを渡すと単語とみなす単位を指定できる。この --word-diff-regex オプションに "." という正規表現を渡すことで、単語とみなす単位を「文字」にすることができる。日本語でも問題なく使える。しかしながら、単語単位が常に有効とは限らない。ケースバイケース。git の管理下にないファイル同士の比較を行うために、--no-index オプションが必要。
$ git diff --no-index $ git diff --word-diff --no-index $ git diff --word-diff-regex=. --no-index
git のコマンドエイリアス登録をしておく。
$ cat ~/.gitconfig (snip) [alias] cdiff = diff --word-diff-regex=. (snip) $ diff cdiff --no-index
git を使う方針ならば、diff-highlight を使うのも一つ。ただし、文字単位ではなくなるし、単位を指定できなくなる。
$ git -c pager.diff='perl /usr/share/doc/git/contrib/diff-highlight/diff-highlight | less' diff