マージの失敗後にGitのマージされていないファイルのみを表示する方法


32

一部のファイルのマージ中に、マージに失敗しました。

git status

成功したマージと失敗したマージの両方を示します。

失敗したマージファイルのみを表示する方法(競合)。

現在、私はこれを行うために次のコマンドを使用しています

 find . -name '*.cpp' -o -name '*.h' | xargs grep -l '<<<<'

回答:


37
git diff

これは、失敗したマージの後にのみ失敗したマージを表示します。表示する情報を設定する多くのオプションがあります。私はこれがあなたが望んでいる正確なオプションだと思う:

 git diff --name-status --diff-filter=U

http://www.kernel.org/pub/software/scm/git/docs/user-manual.html#resolving-a-mergeおよびhttp://www.kernel.org/pub/software/scm/も参照してください。 git / docs / git-diff.html


9
先行するUのないファイルのクリーンなリストが必要な場合は、を呼び出すことができますgit diff --name-only --diff-filter=U。このようにして、出力をパイプすることができます(例:do)git diff --name-only --diff-filter=U | xargs subl
-JHannes


7
git --no-pager diff --name-only --diff-filter=U

しかし、目標はこれらのファイルを編集する可能性が最も高いため、次の方法で完璧になります。

vim $(git diff --name-only --diff-filter=U)

別の回答のコメントから@JHannesに感謝

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.