2
0

【git stash】変更内容を別のブランチに移動する方法

Posted at

あるブランチで作業中に、commit前の変更内容を別のブランチに移動する方法をまとめます。

変更の退避

$ git stash -u

コミットしていない変更を対比し、ブランチ上に変更がない状態にします。
-uコマンドは新規作成ファイルも退避することができます。
通常、新規作成ファイルは追跡されていない状態のため、-uコマンドを使用する必要があります。

ブランチの移動

使用していたブランチから、新しく変更を適応したいブランチに移動します。
状況に応じて、新規作成と既存ブランチへの移動を使い分けてください

新しくブランチを作成

ここでは、新しくブランチを作成していきます。

git swich main

ここでmainを最新に更新

git pull origin main

新規ブランチの作成

git switch -c <新しいブランチ名>

例えばfeature/new-branchという新しいブランチを作成する場合は

git switch -c feature/new-branch

既存ブランチへの移動

すでにブランチが存在する場合は、そのブランチに移動します。

git swich <ブランチ名>

移動した変更の適応

git stash pop

このコマンドでstashされた変更がすべてブランチに適応されます。

変更のpush

これ以降は、通常のpush作業を行います。

git add -A

-Aコマンドは、除外設定されているファイル以外のすべての変更をaddします。

git commit -m "コミットメッセージ"

""の間にメッセージを追加し、コミット。
-mコマンドはメッセージ追加コマンド。

git push -u origin 新しいブランチ名

-uコマンドは、ローカルブランチとリモートブランチを連結させます。
これ以降、ローカルからpushやpullを行う際に、ブランチ名を入力する必要がなく、git push``git pullの入力だけでよくなります。

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