イテレーション中に同じ変更を含む場合の対処 - KatLab-MiyazakiUniv/etrobocon2024 GitHub Wiki

解決したいこと

同じイテレーション中に、仕方なく複数のチケット間で同じ変更を含める必要がある場合、プルリクエストが煩雑になる

解決手順(例)

  1. 同じ変更を含むチケットをmainブランチにマージする
  2. 他のチケットで以下の操作を行う。

簡単な流れ

  1. 最新のmainブランチからhogeブランチを作る

  2. 自分の作業用ブランチの変更をhogeブランチに取り込む

  3. 自分の作業用ブランチを削除する

  4. hogeブランチを作業用ブランチと同名のブランチを作り揚げる

// 作業ブランチ名ticket-Xは適宜読み換える
// hogeは既存のブランチ名と被らなければなんでもいい
$ git switch -c hoge origin/main
$ git merge ticket-X
// 多分なんかでるけどCtrl+Xでいい
$ git branch -D ticket-X
$ git switch -c ticket-X
$ git push -f origin ticket-X
$ git branch -D hoge

上記でできない場合、以下の流れでどうでしょう?(※ブランチ内のすべての追加したコミットが1つのコミットになります)

// 作業ブランチ名ticket-Xは適宜読み換える
// hogeは既存のブランチ名と被らなければなんでもいい
$ git switch -c hoge origin/main
$ git merge --squash ticket-X
$ git commit -m "このブランチで変更した内容の要約"
$ git branch -D ticket-X
$ git switch -c ticket-X
$ git push -f origin ticket-X
$ git branch -D hoge