趣味で始めるプログラミング

プログラミングを個人の趣味として楽しむブログ

バージョン管理はどれがよい?

少しプログラムを書いてはコンパイルして動作確認をして、また少し書いては…と繰り返しているうちに、突然プログラムが予想外の所で正常に動かなくなることがあります。こういうときはちょっと前のうまく動いていた状態に戻して確認するのですが、自分の手でプログラムを書き戻すと何故かさっきはちゃんと動いていたはずのものが動かなくなっているということがしばしばあります。

このような状態を避けるために、プログラムを書くとき普通はバージョン管理ツールを使用します。メジャーなものは3つあり*1、古いものから順番にCSV*2Subversion、Gitというものがあります。

 

正直、個人が自分1人のプログラムのバージョン管理に使うのであればどれを使っても大差ないと思うのですが、 昨今の使われ方を見ている限りでは、今後のサポート状況を考えるとGitを使っておくのが良いように感じます。

今回の開発環境の検討を機会に調べてみたところ、Gitは分散環境を意識して作られているためローカルリポジトリ+中心リポジトリといった構成をとるようになっており、中心リポジトリをBitbucket*3のようなサービスにしておけば簡易的なバックアップも取れるようになり、ついついバックアップその他の面倒なことをさぼりがちな人にもお勧めできる環境にできるかと思います。

Bitbucket — The Git solution for professional teams

 

ということで、バージョン管理はGit、中心リポジトリBitbucketにして簡易的なバックアップも兼ねる方針で。

本格的なバックアップをどうするかはまた別の機会に。

 

*1:MicrosoftのVSSもそこそこ使用されているかとは思いますが商用版のみなので、それほどメジャーというわけではないと思います

*2:Concurrent Versions System

*3:この手のサービスではGitHubが有名ですが非公開のリポジトリ作成が有料、対してBitbucketは5Userまでは無料で非公開のリポジトリを作成可能