この記事では、プログラミングをするなら、バージョン管理ツールを使ったほうが良い理由を説明します。バージョン管理とは、変更点を記録していくことです。
プログラミングでバージョン管理ツールを使う理由
ソフトウェアの修正するとき困っていませんか?
プログラマをしていると、当然ですがソースコードを変更・修正しますね。で、完成したソフトウェアをメンテナンスしていけば、どんどんソースコードを修正したり変更したりしていると思います。
そんなとき、変更の元となった古いソースコードも残しておきたいですよね。どうしていますか?
古いファイルでいっぱいになってませんか?
一つだけのファイルだったら、ファイルをコピーして、ファイル名に _org とか、_bu とか付け足して保存してたりしませんか?例えば index.html を修正するときは、index.html_org だとか、index.html0620 とか。
こんなバックアップのファイルも、日が経つにつれて、ファイルも増え、また、記憶も薄れ、どれが不要なのか、古いファイルのなかでもどれが新しいのかよくわからなくなっています。
また、複数ファイルからなるソフトウェアでは、古いソースコード一式を保存しておくために、フォルダ名に、gmain_org とか、conv_ver101とつけてフォルダ丸ごとコピーすることもありますよね。
変更前のファイルやフォルダを名前を変えて保存することのデメリット
必要なファイルといらないファイルの違いがわからなくなる
でも、ファイルをコピーするやりかただと、ファイルがごちゃごちゃ多くなりすぎて見にくいし、どれが最新なのかわかりにくいですし、古いファイルがソフトウェアの動きに悪さをする可能性も出てきます。
例えば下図のような状態です。必要なindex.php 1つに対して、古い不要なファイルが4つもできています。また不要ファイルの中でどれが新しいのか、どういう順で作られたのかもよくわかりません。
また、これがサーバーだったら、index.php_orgなど古いファイルが、外部から見られてしまう可能性もあります。.phpと拡張子が違うため、サーバー側で実行されず、ファイルの中身がそのままブラウザに表示されてしまうかもしれません。
フォルダごとバックアップしていると容量を取りすぎる
また、フォルダ丸ごとコピーするやり方だと、さすがに1行だけ修正したときにソースコードフォルダまるごとコピーするのはストレージに無駄に領域をとってしまいます。
だから、開発途中や一つのバージョンの中でも項目ごとに分けてフォルダを作って古いソースコードをいちいち保存していくわけにいきませんね。
下図にフォルダ丸ごとコピーで保存した例を挙げます。バージョンごとにフォルダが作られているため、それぞれのバージョンで複数の修正・変更があったとしても、まとめてしか見返すことができません。また _org がいつのものなのかもはや分かりませんね ^^;
ソースコード変更管理ツールを導入するメリット
ソースコード変更管理ツールを入れることによって以下のことが解決できます。
- フォルダやファイルが別名で増えたりしない
- どのフォルダが最新かがわからなくなることがない
- 古い不要ファイルに悩まされない
- 変更の記録に労力や容量がかからないため、細かく管理できる
- 小さな修正ごとに記録していける
- 後で見直したり、他の開発者が見たときにソースコード修正の理由や意味が理解しやすい。
下図にバージョン管理ツールの一つであるGitで管理しているソースコードの例を載せます。
細やかに修正ごとに記録していけば、それぞれの変更理由ごとに、どのファイルを修正したのかを見ることができます。
- 変更を分岐して記録することができる
- 新規機能開発バージョン、バグ修正バージョン、公開バージョンなど複数のバージョンを一つのフォルダで管理可能
- 変更の流れを管理しやすい
- 過去のバージョンに戻って分岐して開発できる
まとめ
この記事では、プログラミングする上でバージョン管理ツールが必要な理由を説明しました。
バージョン管理ツールを使うと以下のようなメリットがあります。
- 変更前の古いファイルが増えていかない
- フォルダごとコピーするように容量を取らないため、細かく記録できる
有名なバージョン管理ツールとしてGit(ギット)があります。
古いファイルを別名で保存していたら、ぜひ、バージョン管理ツールを使ってみましょう。
コメント