Githubでプロジェクト管理をしていていつものようにマージを行おうとした時…。
マージ先を本来マージしたかったブランチと別のブランチにマージを行なってしまった…。
今回はその戒めとしてその時行なった手順をまとめていこうと思います…。
行なった手順は全てWeb上で行いました。
事の経緯
developからAブランチを伸ばし、さらにBブランチを伸ばした。
A,B共にPRを作成。
Aブランチはdevelopに、BブランチはAブランチをそれぞれマージ先に指定していた。
Aブランチを先にマージし、Bブランチのマージ作業を行う時、マージ先をAブランチにしたまま作業してしまった…。
解決まで…
BブランチのマージをRevert
とりあえずBブランチのマージをRevertしてみた。
マージした場所にある「Revert」を押下し、マージした。
するとPR作成の催促表示がA,B共に出た…。
先にマージしたはずのAブランチまで表示が…。
Bブランチで再度PRを作成
developをマージ先にしてBブランチのPRを作成…。
するとコンフリクトを起こしており、AブランチのPR作成の催促表示は出たまま…。
BブランチPRのコンフリクトを解決
「Resolve conflicts」を押下。
コンフリクトを全て解決したのち、「Commit merge」を押下…。
するとAブランチのPR作成の催促表示が消えた!
Bブランチを正しい先にマージ
マージ先をよくよく確認してマージを行なった。
無事に元の予定通りA,B共にdevelopへのマージを終えることができた…。
まとめ
マージ先をミスると手間がかかる。
1番はマージ先を間違えないこと、もし間違えてしまっても落ち着いて、冷静に対処を行うことはとても大事。
ミスをしてしまったときこそ落ち着いた対処が必要ですね…。
参考
GitHubで誤って違うブランチにマージしてしまった時にWeb上だけで戻す方法
GitHub でのマージ コンフリクトを解決する