コード開発プロジェクトにおけるソース管理システムの正しい利用法Beginner's Guide(2/4 ページ)

» 2008年04月11日 17時00分 公開
[Travis-Snoozy,Open Tech Press]
SourceForge.JP Magazine

 チェックインを行う際には多数施した変更内容の完全性が気になるが、そうした懸念に煩わされなくするにはブランチ(branche)という概念を理解しておく必要がある。ここでいうブランチとは、複数の開発目的ごとに異なるソース管理リポジトリを運用することにほぼ相当する。ただし実際に複数のリポジトリを運用するよりもブランチを用いる方が優れているのは、個々のブランチにて各自が施した変更にはチームメンバーの誰もがアクセスできるのと同時に、開発用のメインライン(main line)にてほかのメンバーが施した変更カ所にも直接アクセスできる点である。その後の変更作業が順調に進み“最終的”にチェックインしても問題ないと判断できるレベルに到達できたら、自分のブランチをメインラインにマージ(merge)し直すことになる。こうした用途に用いられる個々のブランチは通常、個人ブランチ(personal branch:チェックインする人間が自分だけの場合)ないし機能ブランチ(feature branch:複数の人間が共同で作業に当たる場合)と呼ばれている。

 darcsというコード管理システムでは、個々のチェックアウトごとに独自のブランチとする仕様になっている。この場合各開発者は、各自が担当するコードをチェックアウトし、追加した変更内容は適切な間隔を空けてパッチとして登録するということになる。

$ darcs get http://example.com/trunk your-local-branch


 Subversionの場合、ブランチのマージに関する構文は分かりやすいが、-rパラメータで指定する値は多くの場合ユーザーが手作業で管理しておく必要がある。

$ svn merge svn://example.com/repo/branches/branch svn://example.com/repo/trunk -r5:9


 ブランチおよびマージは、ソース管理システムを運用していく上で最も取り扱いの難しい作業となることが多い半面、最も有用な機能でもある。いずれにせよ適切なマージの実行法をマスターしておけば、ソース管理システムを最大限有効に活用できるはずである。

Copyright © 2010 OSDN Corporation, All Rights Reserved.

注目のテーマ