PHP: Hypertext Preprocessor

PHPプロジェクトのバージョン管理システムがSubversionからGitへ移行することが「PHP is Moving to Git (Eventually)」において伝えられている。オープンソースプロジェクトで使われるバージョン管理システムはGitやMercurialといった分散型のバージョン管理システムに移行する傾向がみられる。

PHPプロジェクトはもともとバージョン管理システムとしてCVSを採用してきた。2年前、CVSからSubversionへの移行を済ませており、今回は3つ目のバージョン管理システムということになる。PHPプロジェクトのようにCVS、Subversion、Gitの順にバージョン管理システムを移行させる例は少なくない。

CVSはシンプルで分りやすいバージョン管理システムだが、いくつかの操作が提供されておらず、複数名作業に向いていない面もあった。SubversionはCVSで問題視されてきた部分が改善されているため、CVSからの移行先として採用されることが多かった。

Gitはこうした従来のバージョン管理システムとは別に開発されたもので、CVS/Subverionの操作性とは異なっている。このため、当初はGitの採用によい顔をしない開発者が少なくなかったが、Gitの提供する優れたブランチ管理機能は、開発体制そのものを変えるほど便利で強力なものであり、現在ではその有用性を認める開発者が増えている。

PHPのみならず、SubversionからGitへの移行を検討しているプロジェクトは多い。今後も同様の移行作業を実施するプロジェクトが出てくるものとみられる。