バージョン管理システムSubversion(TortoiseSVN)ってどんなもの?
(ご注意)
このページをご利用になった結果の影響については、
一切責任を負いませんので、あらかじめご了承願います。
- バージョン管理システム(Subversion)というと、
とても複雑なもののような気がしますが決して難しいものではありません。
今までやっていたファイル・フォルダの管理に対して、
単に、いつ誰がどんな編集をしたというこれまでの履歴を
簡単に呼び出す機能を付け加えることができるようになったと考えればよいでしょう。
特に、TortoiseSVNは、Windowsエクスプローラを拡張していますので、
通常のファイル操作の延長で導入することができます。
Windowsだけではなく、Macにも同じような便利なソフトウェアがあります。
- バージョン管理するファイルというと、
まずプログラムのソースコードが思い浮かびますが、
もちろんそれに限った話ではありません。
文書ファイルでも、画像ファイルでも、何でもよいです。
もし、あなたが定期的にファイルを更新して
定期的にリリースしようとしているとき、
または、時々ファイルを少し編集しては
編集する前のファイルを毎回別の場所へバックアップしている
ときなどは、バージョン管理システム(ここではSubversion)を
利用することをおすすめします。
- ファイルを編集するのはあなたひとりの場合でも、
あなたを取り巻く複数人数のグループであっても、
それはいっこうに構いません。
人数が多くなってきたときに起こる心配事は、
たった今あなたが編集しているファイルを
たまたま同時に他の人が編集していて、
その人の編集を無効にしてしまう、
または、あなたの編集が無効になってしまうことです。
こんなときにバージョン管理システムを利用すれば、
あなたが他の人の編集を上書きしてしまったり、
他の人にあなたの編集を上書きされてしまったり
してしまうことを防ぐことができます。
- さて、バージョン管理システムの考え方は、
ふつうのファイルサーバ(ネットワーク共有フォルダ)とは扱いが少し異なります。
それは、ファイルサーバのファイルを直接編集するのではないことです。
まず、サーバからあなたのPCへファイルをダウンロードしてきます。
そのあと、あなたのPCでファイルを編集します。
結果を、サーバへアップーロードします。
これらの作業に、Subversionでは名前がついています。
初めてファイル群をサーバからダウンロードすることを「チェックアウト」、
2回目以降にサーバから変更部分をダウンロードすることを「更新」、
編集した結果をサーバへアップロードすることを「コミット」といいます。
よく使う機能ですので、覚えておきましょう。
- 一方のサーバ上のファイルがどうなっているか気になるかもしれません。
サーバ上のファイルは直接テキストエディタ等で参照したり編集することはできません。
これは、サーバがすべてのファイルを個別で管理しているのではなく、
変更点を差分で管理するなど最小限のディスク領域すむように工夫しているためです。
この、サーバ上で管理しているファイル群のことを「リポジトリ」と呼んでいます。
そして、あなたのPCへダウンロードしてきたファイルのことを「作業コピー」と呼んでいます。
shacho@critical.ne.jp
Last modified: Thu Nov 13 18:00:00 JST 2008