2014年3月13日木曜日

開発初心者がバージョン管理をはじめようと思ったきっかけ


バージョン管理を利用する前

開発を行うときは「バックアップを忘れずに」と、ファイルを複製してはファイル名に
日付を付加して管理していました。
(他にも○○コピーや○○編集用とか色々していました)

でも開発を進めているとバックアップファイルが次第に増えて、数日経つと
バックアップがファイル名だけでは判別が付かなかったり、差分を確認しても内容が
いつ・何のためにしたのか判らないカオス状態になったりしました。

上手く動作しなかったときは、動作していたところまで元に戻すのにエディタの「戻る」に
頼ったり、バックアップファイルの差分をチェックして対応していました。

ですが、このやり方だと複数人で進めていると確認環境のサーバにアップしたとき
さっきの状況+他の人がアップしたファイルを更新しないよう気を付けたり、他の人が
編集しているファイルは編集するとキケンなので編集できなかったり、運悪く編集したファイルが
他の人と衝突していたら、差分を比較して問題が出ないよう調整なんかしていました。

ユーザーからの問い合わせ内容でロジックの調査が必要になったときは、担当者に確認して
もらうのですが、数ヶ月経ったりすると担当者からは覚えていない・分からないが返ってきて
それが当たり前の光景になっていました。

開発について右も左も分からない自分は、それが開発の進め方だと思っていました・・・

でもこんな状況を重ねていくと次第に感じてきたのが、一人で作業している場合ファイルの
管理が煩雑になったり、どれが最新なのか判らず安心できなくて精神衛生的に悪い状態。
複数人で作業している場合、どれが最新なのか判らず、誰が・どの部分を・何故編集したか
判らず、ファイルを反映しても良いのか・編集しても良いのか判断できず、担当者に丸投げ。

これでは余計な時間を消費しますし、内容を保証できないので簡単には編集できず、複数人が
同時に開発を行うことは難しく、仕事を進めるうえでも足枷になっていました。

そんなときに出会ったのが、バージョン管理という仕組みです。
バージョン管理は誰が・どの部分を・何故編集したかを記録し履歴として残すことができる
仕組みと解釈しています。
これだけでは、すべてが解決できるとは思っていませんが、バージョン管理を利用する前より
色々と良くなることがあります。

もう夜も遅いので、続きは別の日に書こうと思います。
これだけのことを書くだけで、約3時間も費やしてしまいました。
思ったことを書くのは難しいです。
続きを書きました。