2017-03-01 2 views
2

特定のファイルと同時に変更されたファイルを確認したいと思います。具体的には、この特定のファイルの履歴を取得したいと思います。この履歴のコミットごとに、どのファイルが影響を受けているかを知りたいと思います。git:1つの特定のファイルに沿って変更されたファイルのリストを取得します。

git log --name-onlyを実行すると、コミットごとに、コミットの完全な履歴と、変更されたファイルの一覧が表示されます。

ここでgit log <file>を実行すると、この特定のファイルに関連するコミットの履歴が表示されます。

git log --name-only <file>ただし、各コミットによって変更されたファイルの完全なリストは含まれません。代わりに、私には<file>と表示されます。これは正直では無駄です。 このコマンドにすべてのファイルを含める方法はありますか?

答えて

2

2つのコマンドをパイプライン処理することができます。ここ

$ git log --format="%h" <file-name> | xargs git show --name-only 

gitのログ--format = "%のH":選択コミット-SHA指定されたファイルが変更された場合

xargsのGitの表示--nameのみ:選択したコミットをargsとして受け取り、完全に変更されたファイル名を表示します。リストへ

1

使用git-rev-listそれぞれに変更されたすべてのファイルがコミット取得するために特定のパスに影響を与え、その後、git-showコミット:

あなたはまた、TortoiseSVNのに似 TortoiseGitツール(GitのためのUIベースのツールを使用することができます

git show --name-only $(git rev-list HEAD -- PATH)

0

) 同様に。ファイルを右クリックし、メニューにTortoiseGitに行くTortoiseGit-

  1. をインストールした後

  2. ログを表示を表示します。

これらのコミットに含まれる他のファイルとともに、そのファイルのコミット履歴が表示されます。また、ファイルの変更も表示されます。

関連する問題