0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Git】変更を一時退避する便利技 git stash の基本コマンド

Posted at

はじめに

開発中に「今の変更を一時的に保存して、後で戻したい…」と思うことはありませんか?
そんなときに便利なのが git stash です!
git stash を使えば、コミットせずに作業途中の変更を退避し、好きなタイミングで元に戻せます。
本記事では、知っておきたい git stash の基本コマンド5つを紹介します!

1. 変更を退避する

git stash push -u -m "作業中の変更を退避"
  • pushは省略可能なので、git stash -u -m "作業中の変更を退避" でも同じ動作になります
  • -uは未追跡ファイルを含めるオプション。指定しない場合、新規作成したファイルはスタッシュされません
  • -mはスタッシュにメッセージを付けられるオプション。メッセージを付けることで git stash list を実行したときに内容を確認しやすくなります

2. 退避した変更を一覧表示する

git stash list

# 実行結果(保存されているスタッシュの一覧)
stash@{0}: On feature-branch: 作業中の変更を退避
stash@{1}: On main: バグ修正用の一時退避
  • stash@{0} が最新のスタッシュ、stash@{1} は1つ前のスタッシュを指します

3. 退避した変更を適用する

git stash apply stash@{0}
  • stash@{0}(最新のスタッシュ)の変更を適用する
  • 実行後も git stash list にスタッシュは残る
  • 過去のスタッシュを適用したい場合は、git stash apply stash@{1}(1つ前)のように指定できる

4. 退避した変更を削除する

git stash drop stash@{0}
  • stash@{0} (最新のスタッシュ)だけを削除し、他のスタッシュは残る

5. 退避した変更を適用しつつ削除する

git stash pop stash@{0}
  • apply + drop を1回のコマンドで実行
  • apply との違いは、適用後にスタッシュが削除されるかどうか

最後に

覚えておくと便利な git stash コマンドを紹介しました。
この5つを押さえておけば、基本はバッチリです!
「git stash の使い方を忘れた」と思ったときにすぐ見返せるよう、ブックマークしておくのがオススメです!

その他のコマンドについて詳しく知りたい方は、公式ドキュメントを参考にしてください。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?