Open1

作業途中のブランチにmainの変更を取り込む

plumchangplumchang

当たり前の内容かもですが、検索しても意外と出てこなかったのでメモ。
※mainブランチの名前は、masterだったりdevelopだったりするので、適宜読み替える

手順

# 1. 作業途中のブランチは、変更がコミット・ステージされていない状態(ブランチ名・ファイル名は省略)
$ git status                
On branch feature/****
Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
	modified:   *****

Untracked files:
  (use "git add <file>..." to include in what will be committed)
	*****

# 2. 作業途中のブランチでstash
$ git stash -u

# 3. stashの一覧
$ git stash list
stash@{0}: WIP on <commit>

# 4. mainブランチに切り替え
$ git checkout main

# 5. mainを最新化
$ git pull origin main

# 6. 作業中ブランチにもどる
$ git checkout feature/****

# 7. mainの変更を取り込む
$ git merge origin main

# 8. stashを戻す
$ git stash apply stash@{0}