web-dev-qa-db-ja.com

ライン履歴ビューア-Git

コミットごとに、コード内の行を選択して、その行の履歴のリストビューを表示できるツールを知っている人がいるかどうか疑問に思っていました。

誰でもそのようなツールを知っていますか?

46
David.LPower

IntelliJ IDEA " 選択の変更履歴の表示 "機能のみを知っています。

また、いくつかのgit blameコマンドは、フラグメントの履歴を反復処理します。

27
kan

多分 IntelliJ IDEAの注釈 はあなたが探しているものです:

the left Gutter with enabled annotations

注釈の表示と非表示

  1. エディターで目的のファイルを開きます。
  2. 注釈を表示するには、左の余白を右クリックして、Annotateを選択します。
    context menu
  3. 注釈を非表示にするには、注釈の余白を右クリックし、注釈を閉じるを選択します。
55
Lu55

git blame ドキュメント

git-blameは、ファイルの各行を最後に変更したリビジョンと作成者を示します。

使用例

ファイルfooの行40〜50のOriginを見つけることに興味がある場合は、次のように-Lオプションを使用できます(これらは同じことを意味します両方とも40行から始まる11行を要求します)。

git blame -L 40,50 foo.txt
git blame -L 40,+11 foo.txt

特定のコミット(この例ではfe25b6d ^、fe25b6d ^はfe25b6dの親)の前にその行を編集した人を見つけたい場合は、git blameのリビジョンを指定して(デフォルトのHEADの代わりに)から振り返ることができます。

git blame -L 40,+11 fe25b6d^ -- foo.txt
6
naXa

IntelliJを使用している場合、そのアノテーション機能は、以前のリビジョンでアノテーションを実行するオプションを提供します。このオプションを使用すると、その行の履歴に戻ることができます。

以下のスクリーンショットをご覧ください。このオプションとコミュニティ版でも利用可能です。

enter image description here

3
Amit Khandelwal

git log ドキュメント

git-logはコミットログを表示します。

使用例

-Lオプションを指定して、「、」で指定された行範囲の変化を追跡できます。このオプションは複数回指定できます。

git log -L 40,50:foo.txt
2
naXa

Gitは選択した行の履歴を表示できますか? のコメントの1つで提案されているように

git show $(git blame example.js -L 250,260 | awk '{print $1}')

詳細: コードの各行は常に文書化されています。

2
Snger