« PC切り替え器 | メイン | DirectShow 実験プログラム第1段階 »

2004年08月01日

吉里吉里2/KAG3ムービー拡張日誌:: バージョン管理システムについてのメモ

    

使ったことがあるものと、これから使おうとしているものを比較してみる。
ただ、使ったことがあるものは少々バージョンが古かったりするので、現在のものとは違うかもしれない。
後、あんまり詳しく比較はしない。
と言うか、最もよく使う、チェックイン、チェックアウト、ロック、ロック解除ぐらいしか比較していない。

Visual SourceSafe 6.0
チェックアウト&ロック、チェックイン&ロック解除を持つ。
チェックアウトするとロックがかかり、チェックインするとロックが解除される。
チェックアウト以外に取得というものがあり、ソースはこれで取ってくる。
取得したソースは読み取り専用属性が付く。
編集する際はチェックアウトする。すると、ソースの読み取り専用属性が解除され、リポジトリ上のソースはロックされる。
編集が終わったらチェックインする。すると、ソースに読み取り専用属性が再び付き、ロックが解除される。
読み取り専用属性はローカルで簡単に解除できるけど、そんなことをしてもあんまり意味がないのでしない。
説明を読んでわかる通り、小規模開発向け。
でも、作りがシンプルな分使いやすい。
チェックアウト&ロックをした人と管理者が休むと作業が止まってしまうこともある。あんまりないけど、その時はとりあえず叫ぶ。
ただ、マージがほとんど発生しないので、精神的に良い。
マージは非生産的な作業の雰囲気を漂わせている上に、かなりの集中力がいるので、ファイル数が多いと相当辛い。

StarTeam 4.2
チェックイン、チェックアウト、ロック、ロック解除を持つ。
チェックイン、チェックアウトとロック、ロック解除が独立している。
当然、ロックしていないと、他の人が同じソースをチェックインして、マージが発生することがある。
ただし、生産性を下げないためにロックはあまりしない。
そのためマージ作業に遭遇するが、それは諦めるしかない。
もし、他の人が同じファイルをいじっているのを発見したら、出来るだけ早くmakeが通る状態にしてチェックインするのが吉。
そうすればマージ作業から逃れられる。チェックインは早い者勝ちなのだ。とにかく細かく早くリリースしよう。
ただ、焦って致命的なバグを入れてしまわないようにしよう。そんなことをしたら、かなり非難されてしまう。それと、チェックインを急いでいるのは出来るだけ周りに悟らないようにしよう。何食わぬ顔をしながら、素早くコーディングするのだ。
また、周りがどのような作業をしていて、どのファイルをさわっているかに常に気をつけておこう。同じファイルをいじる時期は出来たらずらしたい。かち合う場合はとにかく素早くコーディングだ!
また、ロック機構があるので、担当者に休まれたら叫ぶという状況は発生しうる。
なんか、いいとこなしのような印象を与えてしまうかもしれないが、実際はそんなことはない。
いろいろと機能盛りだくさんだし、それほど悪くはないシステムだ。
にしても、StarTeamってBorlandだったのか。違ったような気がしたが。
そもそも私が使っていたのは4.2とだいぶ古かったので、変わってしまったのかもしれない。

Subversion, CVS
コミット(チェックイン)、チェックアウトを持つ。
まだ使ったことはないので、よく知らない。
ただ、ロック機構がないので担当者不在で叫ぶことはない。
それに、フリーだ。
ただし、CVSはテキストを扱うことを主眼に作られているため、制止画や動画などの扱いは苦手らしい。
Subversionはマニュアルによるとバイナリファイルもうまく扱うようだ。
なお、この項は今後使っていくことで書き換えるかもしれない。

マージへの福音
辛く不毛なマージ作業。そのマージ作業を劇的に楽にしてくれるツールがある。
WinMergeだ。日本語版はこちら
このツールがあるとマージはかなり楽だ。一度使うとやめられない。
とりあえず、マージする予定があるのならインストールしておこう。
テキストのdiffをとるにも使えるし。



投稿者 Takenori : 2004年08月01日 05:57




comments powered by Disqus
Total : Today : Yesterday : なかのひと