バージョン管理システムが分かる13のキーワードオープンソースソフトウェアの育て方(1/3 ページ)

開発者同士のコミュニケーション、リリース管理、バグ管理、コードの安定性の確保、安心して新機能を実験できる環境、各開発者の権限の管理など、あらゆる場面でバージョン管理システムが利用されています。本稿では、どのバージョン管理システムでも共通に使われる13の用語を紹介します。

» 2009年09月03日 00時00分 公開
[Karl Fogel, ]

バージョン管理

 バージョン管理システム(あるいはリビジョン管理システム)は、プロジェクト内のさまざまなファイルの変更履歴を管理するテクノロジーや習慣を組み合わせたものです。例えば、ソースコードやドキュメント、Webページなどがバージョン管理の対象となります。もしバージョン管理システムを使ったことがないのなら、まずはバージョン管理システムを使ったことのある人を探してプロジェクトに引きずり込みましょう。いまどきのプロジェクトなら、少なくともソースコードくらいはバージョン管理されていて当然です。また、たかがバージョン管理程度のことすらできていないプロジェクトなど、誰もまともに取り合ってくれないかもしれません。

 バージョン管理がこれほどまで一般的になった理由は、プロジェクトを運営していく上でいろいろな場面で役立つためです。開発者同士のコミュニケーション、リリース管理、バグ管理、コードの安定性の確保、安心して新機能を実験できる環境、各開発者の権限の管理など、あらゆる場面でバージョン管理が利用できます。バージョン管理システムは、これらの内容を一まとめにして管理します。その中心となる機能が、変更管理です。これは、プロジェクト内のファイルが変更されるたびにその変更のメタデータ(更新日や更新者など)を収集する仕組みです。そして、後からその変更の内容を再現できるようにするのです。つまり、変更が発生した単位で情報を管理する仕組みといえます。

 このセクションでは、バージョン管理システムのあらゆる機能を説明するわけにはいきません。あまりにもさまざまな機能があるので、本稿ではすべてを紹介できないのです。ここでは、使用するバージョン管理システムを選択して実際に稼働させるところまでに絞って説明していきます。

“バージョン”? それとも“リビジョン”?

“リビジョン”と同じような意味でバージョンという言葉を使う人もいますが、本稿ではこの使い方はしません。“バージョン”といってしまうと、ソフトウェアのリリース時の版番号(例えば“バージョン1.0をリリースしました”などと使用)と混同されてしまうからです。しかし、“バージョン管理”という言葉は既に市民権を得てしまっているので、この言葉は使うようにします(本来なら“リビジョン管理”や“変更管理”といいたいところです)。


       1|2|3 次のページへ

content on this article is licensed under a Creative Commons License.

注目のテーマ