git stashは便利なコマンドだけど、stashして、stashして、編集して、コミットして、popしてpopして…みたいなことをしてると、stashした時点とコードが変わっててpopできない、みたいなことがたまにある。 こういうとき、git stashのマニュアルを見ると、「手でconflictを解決してからstash popすること」と書いてある。けど、時にはとりあえずなんでもいいから無理やりpopしてほしい、という場合もある。 このようなときは以下の手順でgit stash pop --force的なことができる。 # 手元の変更をいったんcommitする(このコミットはあとで破棄するのでログは適当でよい) $ git commit -a -m 'tmp' # stash popする。未コミットの変更がなければ、conflictする場合でもstash popできる $ git s