:Gblame
で git-blame
の結果を表示できますが、ある行が変更されるその前の状態を表示したい場合は、その行にカーソルを移動させて ~
を押します。すると、その行を変更したcommitのsha1が012345だったとすると、 git blame 012345^ -- file
を実行したような結果がvimdiffで表示されます。
ちなみに ~
は [count]
を受け取るので 3~
は git blame 012345^^^ - file
になります。また -
は git blame 012345 -- file
です。便利
tips: 空白差分だけの変更を無視する
そもそも ~
が必要になる場面というのは、blameで得られた差分がインデントの変更みたいな、実質中身のない変更の場合のことも多いです。 git-blame
は -w
オプションでそういった空白のみの変更を無視してくれるので便利です。 :Gblame w
で同様になります。 :Gblame
を使うときはとりあえず w
フラグを渡しとくといいかも知れません。
他のフラグや使い方については :help fugitive-:Gblame
を参照してください。