ステージングされたファイルをstash内のファイルとDiffする
質問
Git stashからファイルを比較するための--staged(別名--cached)オプションはありますか?
ここでは、最新のコミットを段階的なファイルと比較しています(明示的な@{}構文を使用していますが、@{0}が推測できることを知っています):
git diff stash@{0}:spec/blueprints.rb HEAD:spec/blueprints.rb
そして、ここで私はディスク上にあるものと隠されたファイルを比較しています:
git diff stash@{0}:spec/blueprints.rb spec/blueprints.rb
現在ステージングされているものと隠し場所にあるものを比較するにはどうすればよいですか?これは動作しません:
git diff --staged stash@{0}:spec/blueprints.rb spec/blueprints.rb
解決
git diff --cached 'stash@{0}' -- spec/blueprints.rb
...引用符は必要ない可能性がありますが、シェルがどのようにあなたを驚かせることができるかはわかりません。
他のヒント
:<n>:<path>, e.g. :0:README, :README
コロンの後にステージ番号(0から3)を続け、コロンの後にパスを続けると、指定されたパスのインデックス内のblobオブジェクトに名前が付けられます。欠落しているステージ番号(およびそれに続くコロン)は、ステージ0エントリの名前を指定します。マージ中、ステージ1は共通の祖先、ステージ2はターゲットブランチのバージョン(通常は現在のブランチ)、ステージ3はマージされるブランチのバージョンです。
所属していません StackOverflow