1
0

More than 1 year has passed since last update.

gitのstashを使いこなせるようになりたい

Posted at

はじめに

チーム開発などをしていると、他メンバーの進捗によってコンフリクトなどを恐れて先に進めないなんてことがあるとのこと。
そんなときに役立つのがgitのstash
そんなstashを使いこなせるようになりたい。少しずつ慣れていけるようにしていく。

shashとは

stash は退避するという意味を持つそう。
今とあるブランチで作業してるけど、急にやりたいことができた。でもコミットしたくない。→ そんなときに使えるのがStashとのこと。
stashを使用すると、コミットしていない変更を退避することができる。
stashで現在の変更を退避して、今すぐやりたい作業をして、退避させていた変更を戻して作業を再開することができる。

実際の使い方

現在の作業を一時的に退避したい

$ git stash save
  • save は省略できる。 また、 save の後に内容を表すメッセージを指定することができる。
  • 下記のようにメッセージ指定して書くことができる。
$ git stash save "◯◯を修正中"

退避した作業の一覧を表示

$ git stash list
  • 退避した作業の一覧を見ることができる
  • 下記のような感じでStashしたリストを確認できる
stash@{0}: On be-webtest: ◯◯を修正中

複数Stashした場合は下記の様な感じで出る

stash@{0}: On be-webtest: ◯◯を修正中
stash@{1}: On be-webtest: Admin/UserControllerTest作成途中

退避した作業を戻す

$ git stash apply stash@{0}
  • stashをstash@{0}で指定してあげてapplyを使って戻す

退避した作業を消す

$ git stash drop stash@{0}
  • stash@{0} をstashのリストから削除することができる

退避した作業を元に戻すと同時に、stashのリストから消す

$ git stash pop stash@{0}
  • stash@{0} の作業をもとに戻すと同時に、退避作業の中から削除する
  • applyとは違い退避リストからも消してしまうため、間違えて操作してしまうと戻れなくなるため、不安な人はapplyで操作したほうが良いかも

まとめ

慣れるまで時間がかかりそうだが、慣れたらすごく便利そうなStash
待機時間を作らないためにも覚えていきたいですね。以上

1
0
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
1
0