ブランチ (ソフトウェア)
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2024/12/31 08:25 UTC 版)
バージョン管理システムおよびソフトウェア構成管理におけるブランチ(英語: branch)とは、バージョン管理システムの管理下にあるオブジェクト(ソースコードファイル、ディレクトリツリーなど)を複製し、それぞれ同時並行して変更が行えるようにしたものである。
ブランチはツリー(英: tree)、ストリーム(英: stream)、コードライン(英: codeline)などとも呼ばれる。分岐元のブランチは親ブランチ(英: parent branch)、アップストリームブランチ(英: upstream branch)(特に、分岐元のブランチが他の組織や個人により管理されている場合には単純にアップストリーム〈英: upstream〉とも)、バッキングストリーム(英: backing stream)などと呼ばれる。親を持つブランチは子ブランチ、親のない(起点となる)ブランチはトランク(英: trunk)またはメインライン(英: mainline)などと呼ばれる[1]。
分散型バージョン管理システムの中にはDarcsのように、リポジトリとブランチを区別できないものもある。このようなシステムでは、リポジトリのコピーの取得はブランチの作成と変わらない。
ブランチを作成する場合、通常は変更点を後で親ブランチに対してマージまたは統合できる必要がある。トランクを直接の親としないブランチから、トランクへの変更点をマージするといったことも行われる。マージ予定のないブランチの作成は、一般的にフォークと呼ばれる。
ブランチ作成の動機
ブランチを作成することで、ソフトウェアの各パーツを並行して開発できる[2]。また、大規模なプロジェクトでは、開発者、マネージャ、品質保証担当者など、様々な役割の担当者が必要となる。さらに、さまざまなオペレーティングシステム向けに複数のリリースを管理する必要もあるだろう。このような場合にブランチを作成すれば、各担当者はコードベースを不安定にするリスクを負わずに、例えばバグに対するパッチ当て、新しい機能の追加[3] 、バージョン間の統合といった変更を独立に行うことができる。これらの変更は、後でテストを行った後に再同期される。
開発ブランチ
正式リリースされる前の、まだ開発中のバージョンのソフトウェアは開発ブランチ(英語: development branch)または開発ツリー(英: development tree)と呼ばれる。もっとも、オープンソースコミュニティにおいては誰もが好きなバージョンのソフトウェアを(開発ブランチかそうでないかに関係なく)取得できるため、「リリース」という概念は比喩的なものと言える。また、最終的に次のメジャーバージョンになるブランチを特に指して「開発ブランチ」と呼ぶこともある。一方で、後続バージョンが複数あり、それが同時に開発中の状態にあるということもよくある。
バージョン管理システムによっては、主となる開発ブランチを指すのに特別の用語を使う場合もある。例えばCVSではメイン(英: MAIN)、より一般的にはメインライン(英: mainline)と呼ばれる。
シャドウブランチとマジックブランチ
cvcやCVSNTといったシステムにはシャドウブランチ(英語: shadow branch)またはマジックブランチ(英: magic branch)という機能がある。これはアップストリームブランチで行われた変更を「覆う」ことで、小さな変更点の管理を容易にする仕組みである(cvcはrPathの開発したオープンソースのパッケージビルドシステムで、バージョン管理システムの機能が盛り込まれている[要出典])。
関連項目
参考文献
- ^ Berczuk, Steve; Appleton, Brad (2003). Software Configuration Management Patterns: Effective Teamwork, Practical Integration. Addison-Wesley. ISBN 0201741172 2007年5月24日閲覧。
- ^ Brad Appleton, Stephen Berczuk, Ralph Cabrera, and Robert Orenstein (1998年2月8日). “Streamed Lines: Branching Patterns for Parallel Software Development”. hillside.net. 2009年8月12日閲覧。
- ^ Derick Bailey (2009年7月15日). “Branch-Per-Feature Source Control. Part 1: Why”. lostechies.com. 2009年8月12日閲覧。
外部リンク
「ブランチ (ソフトウェア)」の例文・使い方・用例・文例
- ブランチをとる.
- ブランチとは朝食とも昼食ともつかないものである.
- 私達は日曜日にブランチを取る
- 突き出るブランチを切り取ってください
- メーターが接続している2つのブランチ(ダイアコンフィギュレーションで調整される4つのアーム)で成る回路
- 大部分の中枢神経系の灰白質を形成し、神経細胞体が埋め込まれている、無髄の軸索、樹枝状結晶、およびグリアブランチの複合ネットワーク
- 個人の受精から円熟までの構造変化を研究する解剖学のブランチ
- 過程に対処する社会心理学と心理学と動機を決定する感情のブランチ
- Brunch「ブランチ」はよく知られた2つを合わせたものである
- いくらか垂れ下がっているブランチを広げるとき3の房と細長い円錐で長い青く緑色の針を持っている西北アメリカの高い対称の松
- ロビンソンに味方する人々は,このチームのゼネラルマネージャー(GM)であるブランチ・リッキー(ハリソン・フォード)と,アフリカ系アメリカ人のスポーツ記者ウェンデル・スミス(アンドレ・ホランド),そしてロビンソンの妻レイチェル(ニコール・ベハーリー)と数少ない。
- ブランチ (ソフトウェア)のページへのリンク