編集済み 2 数か月前 によって ExtremeHow 編集チーム
Gitブランチ管理ウィンドウズマックリナックスソースコントロールバージョン管理開発ワークフロー協力
翻訳が更新されました 2 数か月前
Gitは開発者がコードの変更を追跡し、他の人と協力するのを助ける強力なバージョン管理システムです。Gitの主な機能の1つはブランチであり、開発者がメインのコードベースから離れて異なる機能や実験に独立して取り組むことを可能にします。この詳細なガイドでは、Gitでブランチを作成し管理する方法を学びます。
Gitにおいてブランチは単にコミットへの軽量な移動可能なポインタです。Gitのデフォルトブランチ名はmaster
(新しいプロジェクトではmain
であることもあります)です。コミットを始めると、master
ブランチが与えられ、最後に行ったコミットを指します。コミットするたびに、それは自動的に前進します。
Gitのブランチは基本的にコミット履歴の一部です。これにより、開発者はコンテキストを容易に切り替え、作業を異なるブランチに分けることができます。これはワークフローの管理や変更の影響をコントロールするのに役立ちます。Gitでのブランチの作成や削除は、他のバージョン管理システムよりも簡単です。
Gitで新しいブランチを作成するには、次のコマンドを使用します:
git branch <branch-name>
例えば、feature-update
という名前のブランチを作成したい場合、次のように入力します:
git branch feature-update
このコマンドはfeature-update
という新しいブランチを作成します。ただし、まだmaster
ブランチにいます。新しいブランチで作業を始めるには、次のコマンドを使って切り替えます:
git checkout feature-update
Gitは作業ディレクトリを更新し、feature-update
ブランチにブランチポインタを指します。Gitバージョン2.23以降では、switch
コマンドを使用してワークフローを簡素化できます:
git switch feature-update
Gitは-b
オプションとともにcheckout
を使用し、新しいブランチを作成してそれに切り替えるショートカットを提供します。
git checkout -b <branch-name>
これを使うと、新しいブランチを作成しそれに切り替えられます:
git checkout -b feature-update
または新しいバージョンではswitch
コマンドを使用します:
git switch -c feature-update
リポジトリ内の全てのブランチを表示するには、git branch
コマンドを使用します:
git branch
このコマンドはリポジトリ内の全てのブランチをリスト表示し、現在のブランチにアスタリスク(*)を付けます。
場合によっては、ブランチ名を変更する必要があるかもしれません。現在のブランチを次のコマンドで名前変更できます:
git branch -m <new-branch-name>
現在いないブランチを名前変更したい場合は、次を使用します:
git branch -m <old-branch-name> <new-branch-name>
このコマンドは指定したブランチの名前を変更します。
ブランチでの作業が終了したら、削除することを考えるかもしれません。Gitでのブランチ削除は非常に簡単です。まず、削除したくない他のブランチをチェックアウトしていることを確認します。
ブランチを削除するには、次を使います:
git branch -d <branch-name>
このコマンドは指定したブランチを削除します。削除を検討しているブランチに未マージの変更がある場合、Gitは削除を防ぐでしょう。そんな場合、確信があるなら強制削除できます:
git branch -D <branch-name>
ブランチでの機能や改善の作業が終わったら、恐らくmaster
やmain
といった他のブランチにその変更を統合したいでしょう。このプロセスをマージと呼びます。
マージ先のブランチに切り替えます。例えば、feature-update
をmaster
にマージしたい場合、master
ブランチにいることを確認します:
git checkout master
次に、次のコマンドを実行します:
git merge feature-update
Gitはfeature-update
ブランチからコミットを取り出し、master
ブランチに統合します。衝突がない場合、このプロセスは簡単です。衝突がある場合、Gitはマージを中断し、手動で解決するよう求めます。
マージコンフリクトは、マージされる両方のブランチで同じコード部分に変更があった場合に発生します。Gitは矛盾するコードを強調表示し、開発者が何を保持し、削除し、または書き直すかを決定する必要があります。
マージコンフリクトを解決するには、問題のあるファイルを開き、<<<<<<< HEAD
と>>>>>>>
でマークされた行を探します。これらのマーカーは既存のブランチ変更とマージされるブランチの違いを示します。どの変更を保持するか選び、必要な調整を行います。
矛盾を解決したら、ファイルを解決済みとしてマークします:
git add <filename>
最後に、変更を適用してマージプロセスを完了します:
git commit
これにより変更が統合され、新しいマージコミットが作成され、マージプロセスが完了します。
変更を統合するもう一つの方法はリベースです。リベースは、一連のコミットを新しいベースコミットに移動または組み合わせることを含みます。これはプロジェクト履歴を線形に保つための強力なテクニックです。
ブランチをリベースするには、まずリベースしたいブランチに切り替えます。例えば、feature-update
をmaster
にリベースしたい場合:
git checkout feature-update
次に、次のコマンドを実行します:
git rebase master
Gitはfeature-update
からのコミットをmaster
の上に再適用し、線形の履歴を作成します。リベースによりコミットハッシュが変更されることで、ブランチがすでに共有リポジトリにプッシュされている場合、事態を複雑にする可能性があることに注意してください。
feature/description
やfix/description
のような名前を使用します。Gitのブランチモデルは非常に柔軟で強力であり、個々の開発者やチーム全体が別々の機能や改善に取り組み、メインプロジェクトに影響を与えないようにします。Gitでブランチを効率よく作成、切り替え、管理する方法を知り、マージおよびリベース戦略を理解することは、現代の開発ワークフローには不可欠です。
ベストプラクティスに従い、チーム間で適切なコミュニケーションを保証することで、Gitのブランチは生産性を大きく向上させ、プロジェクト管理を合理化します。小規模な個人プロジェクトに取り組んでいる場合でも、大規模なチームと協力している場合でも、Gitブランチの習得は現代のソフトウェア開発の重要な部分です。
記事の内容に誤りがある場合, あなたは