2007年8月8日(水)

version control

仕事で書くコードは昔は cvs 今は svn で管理してるんだが、俺がやってるような、あれこれ計算モデルを考えてみてそれぞれ variant を作りまくっては結果で評価というのにはこういう cvs や svn のような、メインとなる trunk の管理が主で、枝も分岐はさせられる、という類いのは、あんまり向いてないんじゃないかと最近思ってきた。

結局、ある時点でベースとなるコードがあって、それに対して色々と候補を作るわけだがどれがその後 trunk になるかは判らんし、いろいろ評価中で commit できないでいるところへ、 bug fix やその他でベースへの修正が発生したりすると、検討中のにマージしにくかったり、すると評価が変わるんでできなかったり…

gnu arch とかが差分ベースだったが、そういうので楽なのなんかあるかな

で、調べてみた

arch の実装の一つが gnu-arch らしい
これは随分昔にちょっとだけ見たことあるけど、ちょっとぞっとしないな〜
fuki - fuga's Wiki - GNU arch

類似ので Linux がソースの管理に使ってるのが git
IBM Git を使ってソース・コードを管理する : Linux : dW - Japan
git: Linux kernelのためのバージョン管理システム(VCS)
Git入門

さらに git 類似で Mercurial というのがあるそうな
夜でもアッサム: gitとMercurialの比較[SCM]
steps to phantasien t(2007-01-18)
Mercurial の利用
Pythonで分散バージョン管理
JapaneseTutorial - Mercurial


Linux はあんま好きじゃないから(ぇ、 Mercurial にするかなぁ…
Mercurial も python で書かれてるそうだから、ちょっと気が乗らないが…

[referer: [an error occurred while processing this directive]]

あわせて読みたい