最近、GitとかMercurialとかsvkとかの分散リポジトリのバージョン管理ツールの記事をよく目にするようになった気がする。
そういうものがあるらしい程度の認識だったんですけど、だんだんと普及期に入って来たって感じがするので、ちょっとづつ手を出して行こうと思う。

分散リポジトリだと何がいいのか?

分散リポジトリのSCMを使うメリットについては以下のページが参考になった。

Git/分散レポジトリって何が嬉しいの

  • 独自にリポジトリを作ることで、自分ための更新履歴管理が可能。
  • 独自パッチなんかも、気軽にコミット。
  • ローカルにリポジトリを作れば、オフラインでも利用できる。

どんなツールがあるの?

とりあえず、以下のようなSCMツールがあるようだ。

Git

Linuxの生みの親・Linus TorvaldsがBitkeeperの代わりにLinuxのカーネル開発のバージョン管理をするために開発した。ギットと発音する。
Windows版はまだ実装されていない機能がある。
Ruby on Railsのリポジトリはgitで運用されている。はてなも使ってるらしい。
また、githubというソースコードホスティングサービスなどもある。

参考サイト

Mercurial

Pythonで実装されたクロスプラットフォームのSCM。マーキュリアルと発音するらしい。
mercuryは水銀という意味で、そこから元素記号Hgがコマンドに使用されている。
Windows向けにTortoiseHgというシェル拡張GUIツールもある。

参考サイト

subversion + svk

subversionを利用した分散リポジトリSCM。
subversionだけでなく、CVSやPerfoceなどの他のSCMと組み合わせることも可能。

参考サイト