mercurial ってのを使うと何がうれしいか

■基本は元に戻す
 mercurial の設定とかみたいな話を前に書いてたけど、あれは何がうれしいものかとか。一応書いておこうかと思ったりした。mercurial は基本的にはundo見たいなもの。エディタに良くある"元に戻す"機能。Windows風ならC-Z、xyzzyならC-\とかで実行するあれ。元に戻す機能が無限に実行できると無限undoとかいってちょっと高機能な感じで行ったりするけど、エディタだけでやると基本的にはエディタを閉じると元には戻せなくなる。けどmercurialを使うと、元の状態を記録してあるのでいつでも元に戻せるようになる(実際には元に戻すと言うより変更点を記録してる感じ)。その辺がうれしい。エディタを閉じてもWindowsを閉じてもまた動かせる"元に戻す"見たいなもの。だから実際はプログラムとか書く人じゃなくても役に立ったりはする。

■誰が何時、何処を変更したか
 で、そういう元に戻す機能をちょっと高機能にして元に戻すだけじゃなくて、誰が何処を何時変更したかとかも記録される。プログラムだけじゃなくて、皆でよってたかって変更を加えてるテキストとかでも役に立つし、一人でこっそり書いてundo代わりにしても役に立つ。そこに途中から流用してちょっと違う風にしたテキストとかを試すための機能とか、まあそんなのがいろいろある。

■最近自分がやってるの
 最近自分がやってるのプログラム用途以外の話。自分はメモを全部一つのファイルに入れてるとか前にも書いた気がするけど。一つのファイルにメモしてるとどんどん膨らんでくる。そこで、mercurial見たいなタイプのソフトを使う。で、ある程度必要が薄れた情報はファイルから消す。でもmercurialが記録してるから元には戻せる。何時ごろのどんな内容かがある程度分かってればその時のファイルの状態に戻すことが出来るから、実際はファイルから消しても特に問題はない(実際はそんなに昔のメモなんて必要ないので基本的に戻す必要自体もないんだけど)。でも当面つかいそうなメモは同じファイルに残ってるみたいな感じになる。xyzzyにはメモ機能みたいな拡張(howmとか有名かも)が沢山在るのでもっと便利なのとかも実際はあるだろうけどどうせ使うのを適当に流用してる感じ。

似たような話にChangeLogをメモにしてる人とかテキストで書く人も以外といて実際やってみると色々違う部分で利点があるのでどれがいいとかは本当は特にない。何となく。

■使い方とか
 普通の使い方は
CVSの基礎練習
http://www.hyuki.com/techinfo/cvsinit.html
こういうCVSとかの話と殆ど変わらないので、適当に見ながらやると出来ると思う。あとこのリンク先の奴を見るとDOSとか使ったことない人はコマンドラインって面倒なだけと思ってる人は、こういう風にやるものなのかと開眼で着るかもしれない。