スポンサーリンク

git stash 変更を退避

git stashについて良く使っている使い方をまとめてみたいと思います。
まずは、退避方法についてです。

trackedファイルのみが対象で、git addされたstagedファイルとunstagedファイルの両方が退避される。

git stash

trackedファイルのみが対象で、unstagedの状態にあるファイルのみ退避したい場合。

git stash -k

untrackedファイルも含めて退避したい場合は、-uを付与する。
staged/unstaged両方のファイルが退避される。

git stash -u

また、git stash saveでコメントを付与することができます。

git stash save "comment"
git stash save -u "comment"

スポンサーリンク

git stash listで退避したリストを確認

git stash listで退避したリストを確認することができます。

git stash list

例えば、001と002のコメントを付けてgit stashした場合は、下記のように表示されます。

stash@{0}: On master: 002
stash@{1}: On master: 001

git stash applyで退避したファイルを戻す

git stash applyで、一時退避した変更を元に戻すことができます。
複数の退避がある場合は、直近の退避分が適用されます。
ただし、git addされたstagedファイルは、unstagedの状態となってしまいます。

git stash apply

stagedされた状態で元に戻したい場合は、--indexを付与する。

git stash apply --index

stash番号を下記のように指定しえ元に戻すこともできます。

git stash apply stash@{0} 

git stash clearで退避分を削除する

git stash clearで退避分を削除することができます。

git stash clear

stash番号を指定して削除する場合は、git stash dropを使います。

git stash drop stash@{1}

スポンサーリンク