ブランチ統合の仕方
取り込ませたいブランチに移動してからrebaseすることで、
いわゆるgit commitを1つずつ指定先に取り込んでいくような形でブランチの整理が行える。
git checkout 分岐先ブランチ
git rebase 分岐元ブランチ(コミットをくっつける先) ※例:master等
競合発生時の解消方法(rebase編)
統合先ブランチの方が他者により進んでいた場合の解放方法。
統合元ブランチ:src_branch (よくある例:develop等)
統合先ブランチ:dst_branch (よくある例:feature等)
1.マージしたいローカルブランチに切り替える。
git checkout src_branch
2.リモートブランチのマージ先ブランチの情報をrebaseでローカルブランチに反映する。
git pull --rebase origin dst_branch
3.競合を解消して、addする。
4.コミット数分リベースを続行する。
git rebase --continue
5.強制的にpushする。
git push origin src_branch --force-with-lease
過去コミットの整理
git rebase -i 派生元コミットで
過去のコミット等を整理することができる。
下記のように古いコミットから順番に上から並ぶので、
pickを表の文言で変更することでコミットを整理する。
pick コミット番号1 コミット文言1
pick コミット番号2 コミット文言2
pick |
何もしない |
reword |
コミットメッセージ変更 |
edit |
コミット内容を分割したり、修正したりできる。rebaseがとまるので普通にgit add等を実施後、コミットしなおす。そして、rebase --continueとするとrebase処理を継続する |
squash |
コミット内容を1つ前のコミットにまとめる |
fixup |
squah同様にコミット内容をまとめるが、コミットメッセージは削除される |
何かミスったなと思ったら、rebase --abortでrebase処理を取りやめよう!
最終更新:2021年10月16日 12:25