76

リポジトリ内のローカルの変更の概要をすばやく取得したいのですが、すべての行がマイナスであるため、削除されたファイルを示す差分は必要ありません。

基本的に、私はのようなものが欲しいです'git diff HEAD <list of modified files only>'。理想的な世界では、削除および追加されたファイルのリストが前に表示されますが、それらのファイル内の差分は表示されません。

私はこれを行うユーティリティを書くことのほとんどを行っていました:

git diff HEAD `git status | grep modified | cut -d : -f 2`

代わりにgit-yの方法があるかどうか疑問に思ったとき。行方不明のフラグはありますか?カラー出力も保存したいと思います。

4

5 に答える 5

117

Git バージョン 1.8.5 以降では、オプションを使用し、--diff-filter"d" (小文字) を指定して、削除されたファイルを除外するように指示できます。

$ git diff --diff-filter=d

1.8.5 より古いバージョンの Git では、--diff-filterオプションを使用してこれを行うことができ、「D」(削除済み) 基準以外をすべて指定します。

$ git diff --diff-filter=ACMRTUXB
于 2010-09-11T18:57:00.240 に答える
30

git diff -D(または同等git diff --irreversible-delete) は、削除されたファイルの差分本文を省略します。追加されたファイルに相当するものはないと思います。

于 2013-03-13T01:06:10.033 に答える
2

移動されたファイルを見つけようとする -M を使用することもできます

git diff -M -D 

より多くの情報を得ることができます: git diff --help (オプション -B も興味深いかもしれません)

于 2016-11-10T07:12:18.140 に答える