バージョン管理って?
ソフトを自分で書いてみた人なら分かると思いますが、ソースコードはチョコチョコ書き換えや試作が行われますよね?
ちょっとここ直してみようとか、こうやったらダメかなぁなんてね。
でも、時々、「クソォ!以前のやり方のほうがよかったぞ?」とか、「ヤベェ!新しい変更はぜんぜんダメだ!。元に戻してやり直しだ!」とか、そんなことが起こります。 そういう時どうしてます?。必死に思い出して元に戻しますか? (^^;
・・・大抵、そういう場合、グッチャグチャになってしまい、元に戻すことすらできなくなってしまいますよね? ・・・・orz・・・・
そこで大抵の人はコピーを作成してこれに備えますよね。
なんのことはありません。これがバージョン管理です。 古いソースコードをとっておいて、後で活用したり元に戻したりね。こうやってどんどんコピーを作っていけばいつでもやりなおしたりできます。バンザーイ! バンザーイ!!
・・・・・・・・・・・・・・・・ orz ・・・・・・・・・・・・・・・・・
・・・破綻はすぐに予想できますよね?
- どれがなんのバージョンかわからない
- ディスクを喰う
- どこをどう変更したものなのか把握できない
- 一直線(バージョンが上がるだけ)ならともかく、分岐(試作や実験用のコードなど)だと把握が大変
まあ確かに、コピーをする際に詳しく情報を書きとめておいたりフォルダの名前付けに法則を持たせたり等で対処できないことはないんですが、往々にして人間って、そういうのを途中で忘れちゃったりするんですよねぇ・・・・。
そこで s v n ですよ!
これら問題をよりイージーに解決しようとして、バージョン管理ソフトというものが出来てきました。
バージョン管理ソフトでもっとも有名で実績があるのは CVS というものです。主にUNIX系で発展し、現在でも活躍を続けています。
・・・しかし、CVSは使いこなすまでの敷居がちょーっと高い傾向にあります。(オマエがバカだからだって! 知ってるよそんなの!!(泣 )
そこで近年、CVSのようにバージョン管理ができて、より簡単で使いやすいソフトが注目され、活用する人が増えてきました。
それがsvnです。
svnと使うとどうなるのでしょうか? どんなメリットがあるのでしょうか?