• 締切済み

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

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

みんなの回答

回答No.2

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

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

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

関連するQ&A

  • TortoiseSVN フォルダ名変更

    TortoiseSVNを使用しています。あたらしいVer1.7-4にアップデートして使用しており、.svnフォルダの仕様などが変更されたことを確認して疑問に思ったのですが、新しいVersionからはSVN管理されているフォルダなどの名称を名前を書き換えることでも今度のVersionからは新しい追加フォルダとしてコミットできるようになっているのでしょうか? 以前のフォルダにかならず.svnフォルダは配置されていた時には、そのフォルダの名前を変える際は必ず”rename”を実施しなければいけなかったと思うのですが、この点で新しい仕様の変更などがあったのでしょうか?

  • Ver1.7.4からのtortoiseSVN

    tortoiseSVNをいままで使ってファイルを管理していて、今までの管理フォルダには必ず.svnが設置されてそれで常時ファイルの削除や編集を管理していたと思うのですが、Ver1.7.4からチェックアウトしたフォルダのトップのみに.svnが設置されるように仕様が変更されましたが、これには理由などがあるのでしょうか? また、1つのプロジェクトで一部のフォルダのみを他のユーザーと共有している(余計なファイルをPCに入れたくないなどの理由で)ような場合があり、私の方で、trunkフォルダの一部分のフォルダのみをその人のPC用に選択してUSBメモリなどにいれて渡していました。 このときに.svnフォルダが付いて来ないので、このような使い方は今後できないのでしょうか? 必ずリポジトリフォルダからチェックアウトしなくてはいけないということでしょうか? どうぞご教授よろしくお願い致します。

  • TortoiseSVNでsvn://を使える環境

    TortoiseSVNにてSVN管理しようと思っていますが、 svn://というアクセスを行う為にはリポジトリを作成する サーバ側には何をどういう環境が必要なのでしょうか? 調べてみても、file://かhttp://でアクセスする手法しか 見つかりませんでした。 また、それをサーバとしてLinux、Windowsのどちらでも実現 したいと思っています。 どなたか手順もしくは参考になるサイトをご教示下さい。

  • TortoiseSVNにてサーバー上の共有フォルダにブランチを作成でき

    TortoiseSVNにてサーバー上の共有フォルダにブランチを作成できない。 TortoiseSVN-1.6.8にて下記サイトを参考に、サーバー上の共有フォルダにブランチ/タグを作成し、 ファイルのバージョン管理を行おうとしています。 http://www.ipl.co.jp/item/Subversion.html サーバー側の共有フォルダに対して、branches以下に好きなフォルダ名でブランチを作ります。 にて、リポジトリのURLを指定し実行すると、下記エラーが表示されます。 ==================================================================================================================================== コマンド   file://【サーバーのIPアドレス】/kaihatsu2/SVN_SOFT/branchies/test2からfile://【サーバーのIPアドレス】/kaihatsu2/SVN_SOFT/test1/branchies/test2 へのコピー、リビジョン 2 エラー    URL に対し ra_local セッションを開始できません エラー    'file://【サーバーのIPアドレス】//kaihatsu2/SVN_SOFT/test1' を開けませんでした 終了! ===================================================================================================================================== サイトに書かれている内容通りに作業したのですが、何が悪いのか分かりません。 解決法をご存知の方おられましたら、ご教授お願いできませんでしょうか? よろしくお願いします。

  • TortoiseSVNにてサーバー上の共有フォルダにブランチを作成でき

    TortoiseSVNにてサーバー上の共有フォルダにブランチを作成できない。 と質問させて頂いた者です。間違えて締めてしまったので再度質問させて頂きます。 TortoiseSVN-1.6.10にて下記サイトを参考に、ローカルからサーバー上の共有フォルダにブランチ/タグを作成し、 ファイルのバージョン管理を行おうとしています。 http://www.ipl.co.jp/item/Subversion.html リポジトリのURLを指定し実行すると、下記エラーが表示されます。 ==================================================================================================================================== コマンド: C:\test から file://【サーバーのIPアドレス】/kaihatsu2/SVN_SOFT/branches/testa へのコピー、リビジョン HEAD エラー: URL に対し ra_local セッションを開始できません エラー: リポジトリ 'file://【サーバーのIPアドレス】/kaihatsu2/SVN_SOFT' を開けませんでした 終了! ===================================================================================================================================== サイトに書かれている内容通りに作業したのですが、何が悪いのか分かりません。 解決法をご存知の方おられましたら、ご教授お願いできませんでしょうか? よろしくお願いします。

  • TortoiseSVNにてサーバー上の共有フォルダからチェックアウトできない

    TortoiseSVN-1.6にて下記サイトを参考に、サーバー上の共有フォルダにリポジトリを作成し、 ファイルのバージョン管理を行おうとしています。 http://www.syon.co.jp/syontech/tech014.html サーバー側の共有フォルダに対して、リポジトリの作成は成功したのですが、 参照サイト作業内容 >クライアント側: >実際に作業を行うクライアントマシンにおいて「SVNチェックアウト」でバージョン管理を行う環境をサーバからコピーします。 >今回は作業フォルダの下にフォルダ(work)を作成し、そこで「SVNチェックアウト」を行います。 にて、リポジトリのURLを指定し実行すると、下記エラーが表示されます。 ==================================================================================================================================== コマンド   file://【サーバーのIPアドレス】/test/web/共有フォルダ/develop からチェックアウト、リビジョン HEAD, 再帰的, 外部を含む エラー    URL に対し ra_local セッションを開始できません エラー    リポジトリ エラー    'file://【サーバーのIPアドレス】/test/web/%E5%85%B1%E6%9C%89%E3%83%95.../develop' エラー    を開けませんでした 終了! ===================================================================================================================================== サイトに書かれている内容通りに作業したのですが、何が悪いのか分かりません。 解決法をご存知の方おられましたら、ご教授お願いできませんでしょうか? よろしくお願いします。

  • tortoiseSVNのshowlogテキスト出力

    現在担当しているプログラミングのプロジェクトフォルダはtortoise SVNを使用して管理しています。 半年ぐらい前から依頼のあった修正変更作業が一段落して、それら変更にかかった日数やコストを算定して見積書を作成しなくてはいけなくなりました。 提出書類は変更を行った日付や時間帯や箇所のVersion毎の履歴をかなり詳細に求められています。 この履歴報告書をエクセルなどで作ろうと思ったのですが、tortoise SVNのshow log機能を利用して、今までにコミット時に残してきたメモなどを利用したいとおもうのですが、tortoiseSVNでshow log内容をテキストもしくはエクセルファイルなどに出力する方法をご教示頂きますよう、よろしくお願い致します。

  • TortoiseSVN1.6.7でのhttps接続

    当方環境にて下記の現象が起き、解決できず悩んでおります。 原因や解決策に関しアドバイスをいただけましたら幸いです。 現象 当サイトにてSubversion(バージョン管理システム)サーバの立ち上げを考えております。 クライアント側ツールとしてTortoiseSVNを使用し、ネットワーク経由で サーバ上のリポジトリにアクセスするという使用形態を考えております。 この時、httpを使用してのリポジトリアクセスは問題ないのですが、 httpsでのアクセスの場合、TortoiseSVNのバージョン1.6.7以上を使用すると、 チェックアウトやコミットの際に下記のエラーとなりアクセスができません。 OPTIONS(URL:'https://xxxxxx/repos'):SSL handshake failed:SSL error: certificate verify failed(https://xxxxxx) なお、TortoiseSVNのバージョンが1.6.6以下の場合は、httpsでのアクセスの 場合でも上記のエラーは起きず、リポジトリのアクセスは可能です。 TortoiseSVNは1.6.6と1.6.7を境に何か違いがあるのでしょうか。 当方初心のため、自力での解決ができなくなっており、 原因や確認点等に関しアドバイスをいただけましたら幸いです。 環境 サーバ Red Hat Enterprise Linux Server release 5.5 subversion-1.6.11 Apache/2.2.3 mod_dav_svn-1.6.11 mod_ssl-2.2.3 openssl-0.9.8 クライアント WindowsXP SP3 TortoiseSVN 1.6.7 よろしくお願い致します。 以上です

  • TortoiseSVNがタイムアウトします

    お世話になります。 Windows 7+TortoiseSVN 1.7を使っています。サーバーはさくらインターネットで、Subversionのバージョンは1.6.5です。 あるフォルダでリポジトリビューを開こうとすると、Timed Outと言うダイアログが4回表示されて、接続できません。 更新をした時もやはりTimed Outと出てしまいます。 MacからはVersionsでもDreamweaverでも正常にSVN+SSH接続できています。 解決法を教えて頂ければ幸いです。

  • TortoiseSVNですでに管理されているフォルダを、別の管理プロジェクトフォルダに入れるとどうなりますか?

    すでに、”.SVN”隠しフォルダが作成されている管理されたフォルダの中に、別のSVNプロジェクトで”.SVN”隠しフォルダが作られているような管理フォルダをそのフォルダの中に入れてコミットしたりしたらどうなってしまうのでしょうか? この前、知人から譲り受けたファイルがSVNで管理されていたもので、”.SVN”隠しフォルダが入っていることに気付かずに自分の管理しているフォルダの中に入れてコミットしていたのでたぶんサーバにバックアップされているだろうと思っていたら、この前別のPCにそのSVNのリポリトジからチェックアウトしたら、そのフォルダだけが抜けていたような経験があります。 どなたかご存じのかたいらっしゃいましたらご教授願います。