はじめに
チーム開発しているときに自分の作業ブランチがdevelopブランチに取り残されてることってありますよね。今回はそんなお悩みを持つあなたに朗報です。
なんと、developブランチでrebaseすることで解決できます!(みんな知ってる)
目次
Chapter1
まずdevelopブランチをチェックアウトして、最新にします。
$ git checkout develop
$ git pull --rebase origin develop
Chapter2
次にrebaseしたいブランチ(hogehoge)をチェックアウトし、最新にします。
$ git checkout hogehoge
$ git pull --rebase origin hogehoge
Chapter3
次にrebaseしたいブランチ(hogehoge)をチェックアウトした状態で、developブランチでrebaseします。
$ git rebase develop
Chapter3でconflictした場合
git status
でどういう状況になっているか確認します。
$ git status
この段階で怖くなったので逃げたいという方がおられましたらgit rebase --abort
でrebaseを実行する前の状況に戻すこともできます。戻した後はパソコンを閉じて気晴らしにコンビニまで散歩に行っておいしいコーヒーを買って心を落ち着けましょう。
「逃げちゃダメだ逃げちゃダメだ逃げちゃダメだ」という方は、conflictを解消しましょう。(私はVScodeを使って解消しています。)
解消した後は、下記を行いrebaseを続けます。
全ての変更点を追加
$ git add -A
conflictが解消されているか確認
$ git status
解消されていることを確認後rebaseを続ける
$ git rebase --continue
これでconflictが解消されてrebaseが完了します。
Chapter4
最後にrebaseが完了したブランチ(hogehoge)をpushします。
$ git push --force-with-lease origin hogehoge
終わりに
これで先に進んでいたdevelopブランチに追いつけるはずです。
記事を書いてみたものの少し自信がないので間違えてる箇所がございましたらご指摘いただけると幸いです。