34

私は定期的に次のコマンドを使用して、2つのコミット間で変更されたファイルを一覧表示します。

git diff --name-only SHA1 SHA2

次のようなファイルのリストが表示されます。

/ src / example / file1
/ src / example / file2
/ src / example / file3

これがどれほど有用であるかに終わりはほとんどありません。

また、各ファイルの横に、ファイルが追加、変更、または削除されたかどうかを示す、変更ステータスへの簡単な参照を表示できるようにしたいと思います。

概念を示す例を次に示します。

git diff --name-only --and-how-me-the-change-status SHA1 SHA2
/ src / example / file1
M / src / example / file2
D / src / example / file3

変更ステータス(A、M、D)は例としてのみ示されていますが、明確である限り、これが何であるかは問題ありません。

--diff-filterこのオプションを使用して、追加されたファイルのみ、変更されたファイルのみ、または削除されたファイルのみを一覧表示できることを認識しています。このオプションを使用すると、ファイル名の3つのリストを取得するために3つのコマンドを実行する必要があります。これは素晴らしいですが、もっと良いかもしれません。

上記の出力例を表示するために実行できるコマンドは1つありますか?

4

1 に答える 1

85

を使用します。これは、変更されたファイルのステータスを加えたもの--name-statusと同じです。--name-only

git diff --name-status SHA1 SHA2
于 2013-03-07T14:38:08.953 に答える