#ブランチを切り替えて作業するとき
今やっている作業を中断して、別ブランチで作業したい時。
ブランチを切り替えると、以下のようなエラーが出る。
Please clean your repository working tree before checkout.
「ワークツリーを整理してから別ブランチにcheckoutしてね」
error: Please commit your changes or stash them before you switch branches.
「ブランチを切り替える前に、変更をcommitするかstashしてね。」
とのこと。
編集内容が確定しておらず、まだcommitしたくない場合は、 git stash
を行うことで、変更内容を一時的に保存することができる。
一次保存された内容はこのブランチに格納され、別ブランチには影響を与えない。
これでブランチを切り替えることができ、別ブランチでの作業が可能になる!
再度このブランチに戻り、修正を再開したい場合は git stash pop
で一時保存した内容を呼び戻すことができる。
#コンフリクトが起こるとき
別ブランチとマージする際に、コンフリクトエラーが起こる時。
git merge ブランチ名
というコマンドを実行すると、以下のようなエラーが出る。
error: Your local changes to the following files will be overwritten by merge.
「あなたが以下のファイルに加えた変更は、mergeによって上書きされます。」
とのこと。
git stash
で一時的に自分が加えた差分を待避させることで、別ブランチの差分をマージすることができる。
マージ後に git stash pop
を行い、コンフリクトを解消することも忘れずに。