Git stashは、スクリプトを書くのが少し難しいことを除いて、私が望むことの多くを実行しているように見えgit stash; git stash pop
ます。
それがそのgit stash create
問題への答えであるように見え、1つを除いてすべてが機能します...作成されたスタッシュを取り除くことができません。隠し場所を取り除く方法はありますか?
私がやっていることを100%明確にするために:
スタッシュを作成します。
~/tmp/a(master) $ git stash create
60629375d0eb12348f9d31933dd348ad0f038435
~/tmp/a(master) $ git st
# On branch master
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# new file: b
#
~/tmp/a(master) $ git reset --hard
HEAD is now at 555d572 log message
stashを使用します。
~/tmp/a(master) $ git apply 60629375d0eb12348f9d31933dd348ad0f038435
fatal: can't open patch '60629375d0eb12348f9d31933dd348ad0f038435': No such file or directory
~/tmp/a(master) $ git stash apply 60629375d0eb12348f9d31933dd348ad0f038435
# On branch master
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# new file: b
#
隠し場所を削除します(この最後のビットが機能しない場合を除く)。
~/tmp/a(master) $ git stash drop !$
git stash drop 60629375d0eb12348f9d31933dd348ad0f038435
'60629375d0eb12348f9d31933dd348ad0f038435' is not a stash reference
git stash apply
です。git apply
存在しないローカルパッチファイルを読み込むしようとする試み。正直に言うと、それはおそらくそこにあるべきではなく、うまくいかなかったでしょう。私は漠然とそれを質問から削除したくなりますが、それが現在の形で多くの人を助けてきたので、私はそのままにしておきます。
git apply
この記事を書いている時点での2番目のコードボックスでの実行ではパッチが適用されなかったことを他の旅行者に指摘したいと思います。出力のエラーメッセージはこれを示しています。したがって、実際には、スタッシュを作成しようとしましたが(機能しませんでした。以下のコメントを参照)、作成されなかったスタッシュを適用してから、作成されなかったスタッシュをドロップしました。これが、あなたが何もしなかった理由です。