2012-02-28 16 views
0

指定されたコミットから変更されたファイルを見つける方法はありますか?これらのコミットで変更されたファイルがあり、それでもHEADに変更があります。したがって、あるコミットで行を変更した後、同じ行を別のコミットで変更すると、その行は検索結果には含まれません。指定されたコミットで変更された行のファイルを見つける

例えば、ファイルf1,f2があり、コミットc1,c2があります。

c1コミットc1左からこれ以上の変化は(それが少なくともc1に変更されたすべての行を変更する)が存在しないようにf1を変更f1f2

にいくつかの変更がc2コミット導入します。また、c1からの変更を保存する方法でf2を変更します(c1で変更された少なくとも1行は変更されません)。

検索対象ファイルf2には、検索対象のc1が変更されています。ただし、すべての変更がc2によって上書きされるため、検索ではf1が返されません。

+0

2つのtree-ishオブジェクトを比較するには、git diffを使用してください。使用しようとしているコマンドを追加できますか? –

+0

git log --name-only?! –

+0

クエストオンを理解していない。例を提供する。 –

答えて

1

2つのコミットの間でどのファイルが異なるか知りたいですか?

git diff --name-only commit1 commit2 
+0

違いはない、私はHEADの指定されたコミットで変更された行を含むすべてのファイルを探したい。したがって、変更が別のコミットによって上書きされるかどうかという質問で説明したように、それらは最終結果には含まれません。言い換えれば、見つかったファイルに対して責任を負うことは、少なくとも1つの指定されたコミットで少なくとも1行変更されたことを示すはずです。 –

+0

@mishanesterenkoもしあなたが望むのであれば、あなたの答えを得るために 'git blame'と' grep'を使うのはどうですか? – Borealid

+0

@mishanesterenko:実際にdiffを試してみましたか?私は助けることはできませんが、あなたが望むこと、つまり上書きされた/変更された変更を表示しないと思っています« – knittl

関連する問題