• 締切済み

TortoiseSVNの利用の考え方について

TortoiseSVNをはじめとしてバージョン管理ソフトというものがあります。オープンソースのようなものを多くの人が開発に関わっていく場合に利用するということのようですが、私は考え方が理解できず、お尋ねします。 私はひとまず自分のプログラム作成のために使おうと考えており、他人と協同でのプログラム開発する場合を想定していません。私の場合、プログラムをスクラッチして作成する場合、ひととおり作り上げてからそれをフォルダm01に入れて保存・実行して結果を見ます。そのm01の内容をフォルダm02にコピーしてm02の中で目いっぱい、いろいろ変更します。それが一段落して満足できるとそのままフォルダm03にコピー.....ということを繰り返します。そのときm01,m02,m03が何をしたのか不明になることはあり、困ってしまいますが、このやり方で形式的には整理されていることになります。フォルダごとに1つ1つカタマリになっているということです。 このような風にしてプログラムを作成してくような考え方を新たにSVNのソフトを導入して効率的に整理して分かりやすく管理していくことが可能なのでしょうか。フォルダごとに区分していた各バージョンについてどのバージョンにもすぐに戻せるということになるのでしょうか。いったいどんなカラクリなのでしょうか。ちょっと知っている人に聞いたら2つのテキストを比較するdiffコマンドを使ったデータベースだ、ということでしたが。 ※カラクリなんて考えるから先に進まないのでとにかく使ってみなよ、とか言われています。 でも理屈が分からないとどうしようもなくこんがらがってしまうのではないかと思うのですが。

みんなの回答

回答No.2

フォルダーをいくつも作って管理している事は全て出来ます。 あるファイルがいつ作成されて、いつ変更されてってのをいくつもあるフォルダで探すのってめんどくさいですよね。 そいうのもログで簡単に見れます。 是非 subversion なり git なり使うべきと思います。

  • t_ohta
  • ベストアンサー率38% (5238/13705)
回答No.1

バージョン管理システムは、基本的にはコミットする度に差分を記録し、そのコミットの記録にコメントを残せるモノと考えればいいでしょう。 お知り合いから聞いたdiffを使ったデータベースという考え方は間違って無いと思います。 まっさらで何もファイルが無い状態にファイルが追加されたとう差分記録。 追加されたファイルを書き換えたとう差分記録。 ファイルを削除したという差分記録。 と言った具合に作業内容が記録されていきます。 また、特定の状態(バージョン)から新しいバージョンを作成すると、バージョン毎に差分が管理されていくので、v1.0からv2.0とv3.0の二つのバージョンを作成すると、v2系、v3系それぞれ異なる差分情報が記録されるのでバージョンごとの管理が出来ますし、基本的に差分が積み重なって最新状態が得られる訳ですから、特定の時点に戻りたいという時は極端な話し新規の状態から指定された時点までの差分を順に積み重ねれば好きな時点のファイル状態を得る事が可能です。 細かな管理手法はSubversionやGitなど其々のバージョン管理システムの仕様によって異なりますが、基本的な考え方は同じです。

関連するQ&A