19

約2年の歴史を持つGitリポジトリがあります。その中に単一のファイルがあり、そのためにすべてのコミットを検索し、コミットごとに、その中にコミットされた他のすべてのファイルを検索します。このファイルの名前がfile.txtであると仮定します。このファイルを引数としてgitkを実行できます。

gitk file.txt

そして、私はそれぞれのコミットを取得します。ただし、gitkでそのツリーを参照すると、file.txtに加えられた変更のみが表示されます。そのコミットで他にどのようなファイルが変更されたかを確認したいと思います。各コミットSHA1をコピーして貼り付けて表示できますが、このファイルに関連するコミットは100を超えています。

画面の右下にある「コメント」セクションが空になっていることに気付きました(「コメント」というテキストのみが表示されます)。たぶん、ファイルのリストがそこに表示される可能性がありますか?

4

3 に答える 3

17

コマンドラインで、

git log -p --full-diff file.txt

必要なものを出力します。

gitkで表示する必要がある場合は、引数なしで呼び出し、commit "touching path" file.txtを見つけてください。コミットには、そのファイルが太字で含まれています。また、「上」ボタンと「下」ボタンを使用してトラバースできます。

于 2009-12-29T12:25:36.117 に答える
11

コマンドラインから直接ではなく、実際にgitkで「--full-diff」機能を使用できます。次の手順を実行してください。

  • 通常の方法でgitkを開始します。例:gitk file.txt
  • メニューから[表示]->[ビューの編集...]を選択します。「コマンドライン」ビューを編集していることを確認します。
  • [git logへの追加の引数]の横にある編集ボックスに、次のように入力します--full-diff
  • 「適用」をクリックするか、[F5]を押してください。

それはそれをする必要があります。gitkがコマンドラインからこれを使用できない理由は、非常に便利なオプションであるため、私には謎です。

于 2012-10-09T04:00:46.817 に答える
3

2008年にさかのぼるメーリングリストからの別の解決策:

環境設定メニューの[差分をリストされたパスに制限する]オプションをオフにしてみてください(または「setlimitdiffs0」を〜/ .gitkに追加してください)。

于 2013-11-19T07:35:14.747 に答える