93日目-git merge/rebase


今日整理するテーマはgit mergeとgit rebaseです。


git merge


gitをバージョン管理システムとしてコラボレーションする場合、複数の開発者が互いに開発する場合は、1つのファイルにマージする必要がある場合があります.
このとき使用できるのはgit mergeコマンドです.
git mergeは、連結して延びるブランチです.

AとBの2つの分岐があると言ったら、A分岐を基準にして、B分岐を合併してみましょう。


まずはAブランチに切り替えます.
分岐変換命令にはswitchとcheckoutの2種類がある.
現在のHEADをAブランチに移動するコマンドを作成します.
  • switch
  • $ git switch A
  • checkout
  • $ git checkout A
    上記のように記入すればよい.
    現在HEADはA分岐を指しており、理想的な状態でBをマージすればよい.
    $ git merge B

    git rebase


    rebaseも他のブランチとマージされ、mergeと同じです.
    ただし、commit履歴は、更新されたmainではなく、mainを初期のmainに再設定することで管理できます.
    mainブランチとloginを実現したloginブランチを想定する.
    login実装を確認しましたが、結果は問題なく、メインと統合したいと思います.
    ただし、mergeマージを使用すると、2つのブランチが延長されます.
    したがって、ある時点から、ブランチが指す位置を変更するrebaseを使用してcommit履歴をきれいに管理します.
    プロセスは次のとおりです.
    switchコマンドを使用して、以下に示すようにlogin branchに移動します.(checkoutコマンドを使用可能)
    git swith login
    この状態でlogin branchとrebaseを使用してmainbranchをマージするには、次のコマンドを入力します.
    git rebase main login
    図のように.

    図1-Git Mergeの例



    図2-Git Resbase例



    写真の出所:Git Merge vs Git Rebase