バージョン管理ソフトのMercurialを使ってみている(→日本語チュートリアル

バージョン管理はCVSやSVNすら使ったことがなくてzipに固めて日付でファイル名つけてたんだけど、今のところmercurialで困ったことも特になく便利に使えている。120回ぐらいバージョンを経ても25MBぐらいで済んでくれているので本当に助かる。

Subversion等と違い分散リポジトリらしく、ようするにディレクトリの下に.hgという隠しディレクトリができてその中に全てバージョン管理されて格納される。ディレクトリ毎コピーしてもいいし、必要なくなったら.hgディレクトリを削除しても構わない。

Mercurialを利用している主なプロジェクトは、ぱっと探した感じMozilla、NetBeans、OpenSolaris等があった。

なんでMercurialを選んだかというと

  • サーバーが要らなく、オフラインでも使える
  • プログラマじゃなくても使えそう(むしろプログラム書かない人と共同作業する事が多いので)
  • インストールが楽でみんなに使ってもらえそう→ Mercurial binary packages for Windows and Mac OS X
  • Bootcampで共存してるWindows/Mac間でサーバーを介さずにプロジェクトを受け渡したりしたい
  • とにかく色んな所にバックアップを取りたい

という感じ。

MercurialそのものはPython(とCが少し)で実装されているらしく、使うにはpythonをインストールしなければならない。WIndowsとMacならMercurial binary packageだけで動くが。

とりあえず手当たり次第、自分の持ってる環境にインストールしてみた。これでガンガン同期してます。

Ubuntu7.1だとsudo apt-get install mercurialで一発だった。残念ながらSFCのCNS環境はPythonがバージョン1.5なのでどうにもならなかった。

で、せっかくなのでいくつか、リポジトリをさくらサーバーにcloneして公開してみた http://shokai.org/projects/

特にライセンスについて書いていない物はpublic domainです。改変再配布、切り刻んで再利用などご自由にどうぞ

ドキュメントは気が向いたら書く。

ちなみにコマンドの「hg」はMercurial→水銀→元素記号がhg、ということらしい