15

2つのバージョン間で行が数回変更された場合、gitblameはその行の最新のコミットのみを表示するようです。

その行のすべてのコミットを表示させることは可能でしょうか?

4

5 に答える 5

13

その行のすべてのコミットを同時に表示することについてはわかりませんが、git blame SHA~ -- filename. 非難の繰り返しごとに、その行を変更した次の「最新の」SHA を挿入するだけです。

例: 最初に実行git blame foo.phpすると、行が によって変更されたことが表示されるf8e2e89aため、終了して を実行するとgit blame f8e2e89a~ -- foo.php、git は の前に行を変更したユーザーを表示しますf8e2e89a。すすぎ、必要に応じて繰り返します。

于 2013-08-13T16:45:24.017 に答える
12

git blameそれ自体はできません(ただし、回避策については以下を参照してください)。

ただしgit gui、コミットにドリルダウンできる非難モードがあります。

インストールしたら起動しgit gui blame <filename>ます。

于 2012-06-14T06:33:22.180 に答える
1

の目的はgit blame、特定のファイルのどの行を最後に変更したコミットかを示すことです。同じ行の複数のバージョンを表示するオプションはありません。

于 2012-06-14T06:23:50.987 に答える
1

でやりたいことはできませんがgit blame、word-diff アルゴリズムまたはその他のカスタム diff ツールを使用すると、それに近づく可能性があります。特に、次のようにログ出力に行ごとの単語の差分を表示できます。

# Show deletions delimited with [- -], and additions with {+ +}.
git log --patch --word-diff=plain

関連項目

git リポジトリから著者情報を抽出する

于 2012-06-15T07:43:28.203 に答える