バージョンの制御

6 December 2004

私はバージョン制御を常時使用していますが、他の分野のコンピューター使用にも同様に広まり得るものだと思います。ソフトウェア開発者以外の多くのコンピューターユーザーはバージョン制御を使用していません。しかし、ソフトウェア開発者なら誰もが知っているとおり、バージョン制御は共同作業のための素晴らしいメカニズムで、複数のユーザーが単一のソフトウェアシステムで同時に作業できます。バージョン制御が広く使用された場合に何のメリットがあるでしょうか?

もはや、誰もが自分の作業にバージョン制御システムを使用するのが非現実的ではなくなっています。Subversionは、バイナリ形式を難なくサポートし、CVSの多くの制限を解消する、無料で入手可能なシステムです。ディスク容量も安くなっているため、ユーザーの作業ディレクトリ全体をバージョン制御下に置くことができます。

しかし現状では、多くのアプリケーションやツールがバージョン制御に対応していないことが大きな制限になっています。Wordには以前から何らかの変更追跡機能はありましたが、バージョン制御を念頭に書かれたものではありません。一般的に使われているアプリケーションには、バージョン制御の機能、つまりdiffとmergeはどのようなものになるのでしょうか?このようなアプリケーションは、こうしたアイデアをどのように活用できるのでしょうか?

私はVisioなどのツールで回路図を描いています。どのバージョン間でどういった変更が行われたのか、また他の人が自分の図に対してどのような変更を行ったのかを確認するには、図のdiffを作成できるといいでしょう。このような機能の価値を実際に引き出すためには、SemanticDiffをサポートするツールが必要になるかもしれません。

これはオープンソースコミュニティにとって、従来のアプリケーションを取り込み、誰もが簡単にsubversionを入手して使用できるという事実を基盤に、前進させていく、またとない機会となる可能性があります。ここには、共同作業を本当に向上させることができる優れたアイデアがいくつかあります。