0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Git rebaseのユースケース

Posted at

目的

  • 最近プロジェクトで$ git rebaseをすることがあったので例として紹介する

前提情報

  • 実際の開発現場で$ git rebaseを実行したときの内容をまとめる。
  • このプロジェクトの開発言語はPHPでフレームワークはLaravelを使用している。

ユースケース

  1. 自分の作業ブランチはmasterから分岐したブランチである。わかりやすいように自分の作業ブランチはAブランチとする。
  2. 先輩の作業ブランチもmasterから分岐したブランチである。わかりやすいように先輩の作業ブランチをBブランチとする。
  3. 先輩がDBの設計とマイグレーションを実施し自分がサーバサイドの機能を作成する段取りになっていた。
  4. DBができないとサーバサイドの実装はできないがDBのER図やカラム情報がドキュメントで開示されていたた。そのため先行してmasterからAブランチを分岐して作業を開始した。
  5. Aブランチの実装完了前に、先輩が作業完了しBブランチをリモートリポジトリにpushした。
  6. Aブランチはmasterから分岐しているが、分岐元をBブランチにしたい。下記の方法でrebaseを行い分岐元をBブランチとした。
    1. $ git fetchを実行してリモートリポジトリの最新の情報をリモート追跡ブランチに取得した。
    2. $ git branch -aを実行してリポジトリの一覧を出力しBブランチがあることを確認した。
    3. $ git checkout Bブランチ名を実行してBブランチをローカルリポジトリに取得した。
    4. $ git switch Aブランチ名を実行してAブランチに移動した。
    5. $ git rebase Bブランチ名を実行してAブランチの分岐元をmasterからBブランチに変更した。
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?