git stashを2回


93

gitブランチをすばやく切り替えるgit stash必要があったので実行しましたが、ファイルの1つを編集する必要があったため、もう一度実行する必要がありました。

これでgit stash2回実行し、ファイルの編集に戻る準備ができました。私は走ったgit stash applyが、私が隠していたすべてのファイルが隠されていなかったとは確信していない。何か私にできることはありますか?確認する方法はありますか?

を実行するgit stash showと、2つのgitスタッシュの最後が表示されます。

とにかくすべてを表示することはありますgit stashesか?


4
git stash list。2つの隠し場所を作成した場合は、2 git stash pop回呼び出します。
Felix Kling 2013

こんにちは、あなたはそれを修正しました!あなたはそれを答えにすべきです。
どうも

回答:


169

あなたはすべての隠し場所のリストを得ることができます

git stash list

それはあなたに次のようなものを示します

stash@{0}: WIP on dev: 1f6f8bb Commit message A
stash@{1}: WIP on master: 50cf63b Commit message B

スタッシュを2つ作成した場合は、2 git stash pop回呼び出すだけです。とは対照的にgit stash apply、最新の隠し場所をpop適用および削除します。

特定のスタッシュを参照することもできます。

git stash show stash@{1}

または

git stash apply stash@{1}

どうもありがとう。私の日を救った。
スティーブンマードック

25
git stash pop同じコミットで両方のstashが必要なために2回実行したいが、2番目に「エラー:次のファイルへのローカル変更がマージによって上書きされます:」が発生したgit stash pop場合git stash pop、1)、2)git add .、3を実行できます。)git stash pop
gabe 2015年

これは私を助けました。「git stash」を実行してから、「git stash --all」を実行して、追跡されていない新しいファイルを隠しておく必要がありました。git stash popを2回実行しても機能しませんでした。私は後で隠しておくだけです。
Leopold Kristjansson

0

私はこの状況に出くわしました、私は2つのstashを実行し、 git stash popは 最後のstashをunstashedしました。だから私はやった

git stash list

git stash pop stash@{1}

これは私の最初の隠し場所を解き放ち、私はすべての私の変更を見ることができました!


0

あなたは投稿でいくつかの異なる質問をしました、そして他の回答者はそれらのいくつかに良い答えを与えました。最も重要と思われるが答えられていないものはこれです:

>>私が隠していたすべてのファイルが隠されていなかったとは確信していません。何か私にできることはありますか?確認する方法はありますか?

stashとローカルツリーを比較する

あなたがしたいことは、スタッシュをローカルの作業ツリーと比較することだと思います。stashコマンドに-pスイッチを付けると、問題ありません。

git stash show -p

あなたが探している特定のものがある場合は、そのgit stash名またはstashリストからのIDを使用してください:

git stash show -p stash@{3}

多分差分を使用しますか?

gitスキルをプッシュすることに本当に興味がある場合は、いつでも差分を取得できます。stashの内容とmasterブランチのHEADにチェックインされた内容の違いを確認するには、次のdiffを使用できます。

git diff stash@ master

便利になる可能性があるスタッシュ履歴の要素の変更を表示する別のきちんとしたコマンドは--statです。

git stash list --stat

しかし、私は単純な答えが正しい答えだと思います。-pスイッチを使用するだけで、棚上げしスタッシュが元に戻されたかどうかを確認できます。

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