0
0

違うブランチを参照して現在のブランチを使用したいときのgit操作

Posted at

経緯

開発をしているときに別ブランチでlintやtsc,jestのテストを作成していましたが現在のブランチではそれが作成されていなかったためその別ブランチを使用して現在ブランチで開発している内容にもテストを通すようにします。

git rebaseを使おう

git rebaseとは
簡単にいうとブランチの流れを簡潔にして見やすくする
分岐したブランチの上に現在のブランチを乗っけるようなイメージです。

こちらがとても参考になりました。
https://git-scm.com/book/ja/v2/Git-%E3%81%AE%E3%83%96%E3%83%A9%E3%83%B3%E3%83%81%E6%A9%9F%E8%83%BD-%E3%83%AA%E3%83%99%E3%83%BC%E3%82%B9

実際の流れ

現状はmainブランチから切った現在のブランチと、テストを作成しているブランチがある状況でまだテストを作成しているブランチはmainにはマージしていない状況。

仮名で現在のブランチ名をfeature/taskブランチとし、テストのブランチをfeature/testブランチとします。

とりあえず現在のブランチに移ります。

git checkout feature/task

そして現在ローカルにはテストのブランチがfetchされていないのでローカルに移します。

git fetch origin feature/test

そして現在ローカルにfeature/testブランチが作成されていないので作成します。

git checkout -b feature/test origin/feature/test

そしてrebaseしてfeature/taskブランチをfeature/testブランチの上に乗せて参照できるようにします。

git checkout feature/task
git rebase feature/test

これでテストを参照して開発することができるようになったので変更を加えたら強制的にpushしてPRの際に向き先をfeature/testに変更するようにします。

git push -f origin feature/task

PRの向き先はこの場合,feature/testに変更します。

忘れやすいですがこれから多用することになると思うので記事にしました。

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