なぜバージョン管理システムを使うのか
まず、個人でバージョン管理システムを使う利点を挙げてみます。
- プログラムや設定ファイルを少しずつ変更しながら
データをとる場合。
実験条件にそれぞれ名前(tag)をつけて登録しておけば、後日
その名前で設定ファイルを呼び出して、実験を再現できます。
- プログラムの一部を変更したら動かなくなってしまった場合。
正しく動いていたバージョンに戻せます。
- エディタの操作ミスでうっかり1行消してしまった時。
差分を表示すれば消えた行がすぐに見つかります。
- エディタの M-x replace-string などで変数名をまとめて置換。
なぜかプログラムが動かなくなった。
差分を表示したら "" の中身まで置換されていたことに気づく。
おかげでバグがすぐにとれた。(実話)
また、バージョン管理システムは複数の人間が同時に複数の
ファイルを
修正したりする場合に、真価を発揮します。
ここでは、いくつか思い付く例を挙げてみます。
- LaTeX と tgif で作成している論文の原稿
- CとPrologで記述されている音声対話システム
さらに、ライブラリを充実させておけば、
単なる「ひな型」ファイルの呼び出しシステムとしても活用することができます。
- UNIX の環境設定(ドットファイルや X のリソース)
- 個人のホームページのひな型
- LaTeX で作った OHP のひな型
- 引数の解釈部だけ実装済みの C や Perl ソース
- メニューバーだけ実装済みの Tcl/Tk スクリプト
- etc.
このように、ゼロから書きはじめるのが時間や労力の無駄に
なるようなファイル群を、グループで共有できることも
バージョン管理システムの利点です。
Takuya NISHIMOTO
Last modified: 2009-09-05