メッセージ。 - 分散バージョン管理システムMercurialを使ってみた

# 分散バージョン管理システムMercurialを使ってみた

ぼくは昔からバージョン管理システムが好きで、定期的に新しいのを試したくなる。ただまぁ、使ってみてもすぐ飽きて長続きしないのだけど……。ここ最近はdarcsを使っていたが、なにやらMercurialの評判がよいみたいなので使ってみた。

ちょっと試してみた感じではけっこう使用感がいい。Mercurialの仕組みについては下記の文章を読むとどういうものか分かる。

リモートリポジトリ
http://www.lares.dti.ne.jp/~foozy/fujiguruma/scm/mercurial-remote.html

読み下すとこういう感じ。
(1)分散バージョン管理システムなので、n対n型でリポジトリが存在する
(2)リポジトリ間の同期は、pull(先方のデータを手元にマージ)とpush(手元のデータを先方にマージ)で行う
(3)基本的に選択的マージをしない。pullやpushをすると、先方と手元のあいだの差分がすべてマージされる。「先方のコードは欲しいけどこの部分だけマージしたくない」と思ってもそれをサポートする機能がない
(4)ただし、pushやpullは明示的にどこかのリポジトリを指定して行う(デフォルトでは直接の親がpullやpushの対象となる)ので、「リポジトリAからばかりpullする」みたいなことが起こり親子関係、上流・下流の関係ができる。

(3)の特徴によって、分散リポジトリ全体で1つのコードを作るというエネルギーが発生する。一方で(4)の特徴を使えば、あるノードを中心としてブランチコードをもっぱら開発することができる。収縮と発散の仕組みがうまくシステムに取り込まれていて面白い。

ところで(でくるで)、こういうツールのことを勉強するのって楽しい。なんかこう、ドラゴンボールで修行して強くなるとか、北斗の拳で新しい技を覚えるのとか、そういうのに似てる。新しい道具を使いこなせるようになると、自分が強くなるような気がしてそういうのが楽しいんじゃないかなと思った。
2008-02-08 09:29:41 / ふじさわ / Comment: 0 / Trackback: 0

Comment

コメント投稿機能は無効化されています。

Trackback

TrackBack投稿機能は無効化されています。