Git の別のブランチからブランチを作成する
このチュートリアルでは、Git の別のブランチからブランチを作成する方法を説明します。
分散バージョン管理システムである Git は、共同開発環境でバージョニングを行うための適切なツールです。Git ではリポジトリを作成し、リポジトリではさまざまな開発作業を追跡するためのブランチを作成します。
バグを修正したり、新しい機能を開発したりするために、メインラインから新しいブランチを作成することがよくあります。タスクを完了した後、通常、このブランチをメインラインブランチにマージしてリリースします。
Git は、別の既存のブランチからブランチを作成する機能を提供します。また、Git コマンドを使用してブランチをマージすることもできます。
git checkout
コマンドを使用して、Git の別のブランチからブランチを作成する
分散バージョン管理システムである Git は、プロジェクトリポジトリへの変更を追跡するための便利なツールです。
共同開発環境での作業に同じプロジェクトリポジトリを使用する複数のチームメンバーまたはチームがあります。さまざまなチームメンバーまたはチームが、既存のブランチから異なるブランチを作成して、そのブランチで作業する場合があります。
プロジェクトリポジトリに main
という名前のメインラインブランチがあるとします。バグ修正チームは、そのブランチの上に bugfixes
という名前の新しいブランチを作成します。別のチームまたはチームメンバーは、新しい機能を開発するためのブランチ feature
を作成します。
チームまたはチームメンバーが新しいブランチで行われた変更に満足すると、新しいブランチはメインラインブランチにマージされることがよくあります。
機能を開発するために、メインラインブランチ main
からブランチ feature
を作成するとします。そのために git checkout
コマンドを使用できます。
既存のブランチの新しいブランチを作成するための構文は次のとおりです。
git checkout -b <new-branch> <existing-branch>
この場合、次のようにコマンドを実行します。
$ git checkout -b feature main
Switched to a new branch 'feature'
したがって、既存のブランチ main
から新しいブランチ feature
を作成しました。コマンド git checkout
に対するオプション -b
により、新しいブランチが作成されます。また、新しいブランチがチェックアウトされます。
次に、新しい機能を開発し、新しいブランチ、つまり feature
に変更を加えます。
機能開発を完了し、新しいブランチ feature
への変更をコミットした後、このブランチをメインラインブランチ main
とマージしたいと思います。
git merge
コマンドを使用して、feature
ブランチをメインラインブランチ main
とマージできます。
まず、git checkout
コマンドを使用してメインラインブランチ main
に切り替えます。
$ git checkout main
Switched to branch 'main'
git merge
コマンドを使用して、feature
ブランチを main
ブランチとマージします。
次のようにコマンドを実行します。
$ git merge --no-ff feature
Updating ea1b23a..05e9201
(Summary of changes)
コマンド git merge
の --no-ff
オプションは、早送りマージが実行された場合でも、常に新しいコミットオブジェクトの作成を強制します。マージが早送りとして解決できた場合でも、すべての場合にマージコミットが作成されます。
Git の履歴を参照すると、feature
ブランチの存在に関する情報が表示されるので便利です。また、feature
ブランチのすべてのコミットをグループ化します。
また、feature
ブランチのマージを main
ブランチに戻したい場合は、マージコミットが存在するため、より簡単です。
早送りマージの場合、マージコミットは作成されません。マージされたブランチと一致するように、ブランチポインタの更新のみが発生します。
最後に、変更をリモートリポジトリにプッシュする必要があります。
$ git push origin main
$ git push origin feature
したがって、Git の別のブランチからブランチを作成する方法を示しました。