これ僕.com:行動分析学マニアがおくる行動戦略

意図と行動のギャップから生じる「不自由さ」への挑戦。果たして僕たちに自由はあるのか?

え、バージョン管理ていらないの!?

どーしても気になってしまうので、書いてしまおう。
先日のエントリ、

についたぶくまで、id:ono_matopeさんとid:f-shinさんから次のようなコメントをいただいた。

ono_matope バージョン管理とかしてない。
f-shin おいらもsubversionは別にどうでも良いと思った。レンサバ使う人にsvnインストールは余計なタスク。

更にid:ono_matopeさんのコメントにid:malaさんが多数のスターををつけている。ギークってバージョン管理しないのでつか。。。と軽く衝撃を受けている今日この頃であります。


バージョン管理というか、ソースコードの管理ってどうしてるのかなぁ。Subversionじゃなくてもいいんだけど、類似ツールがあると便利だと思うのだけど。以下は実際にあったケース。

  • 休日に機能Aと機能Bと機能Cを開発するぞ! → 機能Cに着手したけど間に合わない・・・。 → 機能B実装後にcommitしたソースでリリースしよう!とか
    • 基本的にある機能の実装が終わる度にcommitなりtag打ちなりしてる
  • リリース作業が楽でいい
    • 公開サーバーでリリース対象コードをcheckout(またはsvn update)
    • あとは必要に応じてサーバーの再起動(mongrel_rails cluster:stop -> start)とか、DBの構築(rake:db migrate RAILS_ENV=production)とか
  • バグが出たときに、ある機能の実装に着手していた! → リリースコードからbranch作って修正、リリース → 最新コードにmerge
  • ある機能の実装に実験的に着手! → キニイラネェ → キャンセル(revert)
    • これは単に破棄すればいいだけか・・・

ていうか、そもそもこういう状態に陥らないとかってオチなんだろうか orz