2016-06-20 5 views
1

マージコミットがあり、git show -mを使ってその全体を表示できます。しかし、サブフォルダやパスの変更のみを表示したい場合は、どうすればいいですか?私はgit show -m -- app/を実行しようとしましたが、git show --statがリポジトリのその部分でマージが行われていることを示していても、何も表示されませんでした。マージコミットでgit showを実行するときのパスの指定方法

あなたはそのための --relative使用することができます
+0

'git show -m app /' *はすべきで、 '-m'は通常の複合差分問題を無効にするべきです。 'git show -m'は実際には2つ(またはそれ以上)のdiffコマンドを内部的に、つまり各親に対して1つずつ実行するので、これから2つ(またはそれ以上)の差分を得ることができます。また、 'git diff commit'を' commit-app/'と' git diff commit^2 commit - app/'を実行して、親#1とコミット、または親#2とコミットを比較することもできます。 – torek

+0

@torek 'git show -m app /'と入力しても、(gorry show -m app/'を実行しても同じ結果が出ました。 –

+0

ああ、実際、私は間違っている: 'git show -m - app /'は失敗する(明らかに) 'git show'は' git diff'スタイルのパス制限をまったく処理しないために失敗します。あなたは 'git diff'コマンドに頼らなければなりません。あるいは、krzykが答えたときに' --relative'を使う必要があります。 – torek

答えて

2

git show -m --relative=app/ 

をしかし、それは経路に設けられたディレクトリへの相対パスが表示されます:のサブディレクトリから実行

--relative[=<path>]

このオプションを使用すると、ディレクトリ外の変更を除外し、相対パス名を表示するように指示できます。あなたがサブディレクトリ(例えば、裸のリポジトリ)にいないときは、<path>を引数として、出力を相対的にするサブディレクトリの名前を付けることができます。

関連する問題