2017年03月 / 02月≪ 12345678910111213141516171819202122232425262728293031≫03月

2009.10.01 (Thu)

[TortoiseSVN] WindowsでSubversionを使いバージョン管理とバックアップを備えた自宅オンラインストレージ環境を構築する

---目次---
■WindowsでSubversionを使いバージョン管理とバックアップを備えた自宅オンラインストレージ環境を構築する
●【サーバー】サーバーの基本環境を構築したい
●【サーバー・クライアント】バックアップ環境を構築したい
●【サーバー】バージョン管理サーバーを立てたい
●【サーバー】Subversionサーバーにインターネット経由でアクセスしたい
●【サーバー】Subversionのデータをネットワーク上の他の場所に同期したい
●【クライアント】バージョン管理クライアント環境を構築したい
●【クライアント】TortoiseSVN の利用方法を知りたい
●【クライアント】VisualStudioでSubversionを利用したい
●【サーバー・クライアント】Tips・トラブルシューティング
●【サーバー・クライアント】まとめ

※※ご案内※※
この記事に対しご意見やご不明な点がございましたらお気軽にご相談、ご連絡ください。

以前「Mercurial(TortoiseHG)を利用した、バージョン管理とバックアップ」を説明しましたが、
今回は Subversion(TortoiseSVN) での構築方法を説明します。

●今なぜ Subversion なのか?

・バージョン管理を備えた自宅オンラインストレージ環境を構築するには最適だと感じた。
・分散型だと、とりあえず全体の最新をかき集めたり、把握することが難しい。
・分散型だと、なんとなく、やりたいことが実現できない、または手間がかかる。
・Mercurialでは、管理する各フォルダにルートとしての管理領域が作られる為、
 各フォルダで消費する容量が実質2倍以上になってしまう。
・VisualSourceSafe(VSS)はVisualStudioではいいけど、それ以外にはなんとも。そして有料。

Git、Mercurial、Bazzarなど、現在は「分散型バージョン管理システム」が
脚光を浴びていますが、個人的にいずれもWindows環境ではまたまだ使い辛いのと、
Mercurialを実際に利用してみたところ「分散型」よりも「集中型」の方が、
結果的にスマートな管理ができると感じた為です。

また、最近はデータの保存場所として「オンラインストレージサービス」が増えてきていますが、
無料のところはどこも速度が遅く、有料のサービスはちょっと高いと感じるし容量制限もある、
だったら、Subversion を使ってオンラインストレージみたいに利用すれば良いじゃないか、
と思い立ったのが Subversion を研究する発端でありました。

自宅でバージョン管理とバックアップを備えたオンラインストレージ環境を構築するメリットは、
なんといっても「ハードディスクの容量が許す限り使え、増設も可」ということです。
そして良質なプロバイダで光回線を引いていればインターネット経由での速度も速いです。
速度やファイルサイズの制限で悩むことはなくなります。
デメリットとしてはサーバー用PCの電気代がかかるぐらいです。


●用語説明

▼オンラインストレージ
インターネット上でファイル保管用のディスクスペースを貸し出すサービス。

→参考:
一番便利な無料「オンラインストレージ」はどれか
http://it.nikkei.co.jp/internet/news/index.aspx?n=MMIT00000022102008


無料オンラインストレージ・無料ファイル転送
http://www.kooss.com/etc/storage.html


Subversion
http://subversion.tigris.org/

集中型バージョン管理システムのなかで有名なものの一つ。

VisualSVN Server
http://www.visualsvn.com/server/

Subversionサーバーを立てるアプリケーション。

TortoiseSVN
http://tortoisesvn.tigris.org/

Subversionを利用するためのクライアントツール。

▼リポジトリ
Subversion で管理される資源の格納場所、および管理データの単位

▼Dynamic DNS (DDNS)
DNSデータベースを動的に更新する技術。接続ごとにDNSレコードを更新することで
一意のホスト名を常時接続環境を利用する自宅のパソコンに対して付与するサービスがDDNSである。


●設定作業においての注意

設定作業においてWindowsユーザーは管理者権限を持ち、ユーザー名は半角英数とします。
そうでないと以下の作業時にうまくいかない可能性があります。


●目次詳細(やること・必要なもの・必要なこと)

利用ケースに応じて紹介します。以下を参考にして、
この後の解説を読んでいただければよいと思います。

他のやり方で同様の事を実現する方法は幾通りも有りますが、
推奨する方法を紹介しておきます。

詳細な説明は以下の各項ごとに後述していきます。
それぞれのリンクから詳細説明を確認することができます。

▼1台のパソコンでバージョン管理のみしたい
TortoiseSVN(バージョン管理クライアントツール) のみでも行えますが、
サーバーを構築しない単体での単純な利用方法は、ここでは解説しません。
一台で管理する場合も、後々の事を考え「サーバーを構築する」方法をお勧めします。

▼【サーバー】サーバーの基本環境を構築したい
・サーバー用PCの決定
・サーバーは常時電源をつけておく
・ローカルIPアドレスを固定する
・動作テスト

▼【サーバー・クライアント】バックアップ環境を構築したい
・バックアップサーバーには物理的にハードディスクを2台準備
・サーバーのみの設定:ミラー環境を構築
・サーバー・クライアントの設定:共有設定
・サーバー・クライアントへのバックアップツールインストール
・サーバー・クライアント共通設定:BunBackupの環境設定
・サーバー・クライアント共通設定:各バックアップの詳細設定
・動作テスト

▼【サーバー】バージョン管理サーバーを立てたい
・VisualSVN Server のインストール
・VisualSVN Server のサーバー設定
・VisualSVN Server のユーザーの作成
・VisualSVN Server のユーザーグループ作成
・VisualSVN Server の共通リポジトリ設定
・VisualSVN Server でリポジトリを作成する
・動作テスト

▼【サーバー】Subversionサーバーにインターネット経由でアクセスしたい
・環境構築の前準備
・インターネット(WAN)からのアクセスを想定し、ルーターの設定を行う
・インターネット(WAN)からのアクセスを想定し、DynamicDNSの設定を行う
・外部IPアドレスの変更を自動検知してDynamicDNSの設定を変更する
・動作テスト

▼【サーバー】Subversionのデータをネットワーク上の他の場所に同期したい
・svnsyncを使った同期の利点と欠点
・同期先サーバーの設定
・同期元サーバーの設定:環境変数
・同期の初期化
・手動同期を行う
・手動同期後のご注意
・コミット時に同期するようにする
・コミット時の同期テスト
・エラーが出て同期できなくなった場合

▼【クライアント】バージョン管理クライアント環境を構築したい
・バージョン管理クライアントツール TortoiseSVN のインストール
・TortoiseSVN を日本語化する
・TortoiseSVN 除外パターンの設定
・TortoiseSVN 管理フォルダ名の変更
・TortoiseSVN アイコンオーバーレイ設定の変更
・マージツール WinMerge のインストール
・TortoiseSVN 設定反映のため再起動
・hostsファイルの設定(LAN上のPCのみ)
・動作テスト
・リポジトリブラウザ利用のご注意

▼【クライアント】TortoiseSVN の利用方法を知りたい
・作業フォルダ(ローカルファイル)のフォルダ構成
・バージョン管理の概念(trunk, branches, tags)
・バージョン管理の注意事項
・アイコンオーバーレイについて
・バージョン管理へ登録(チェックアウト→コミット)
・バージョン管理から取得(チェックアウト)
・バージョン管理へ更新(SVNコミット)
・競合の編集・解決とマージ
・tag や branch の作成方法
・ブランチのマージ
・差分を確認する・リビジョンの比較を行う
・作業フォルダの変更をキャンセルし、最終コミット状態に戻す

▼【クライアント】VisualStudioでSubversionを利用したい
・AnkhSVNのインストール
・AnkhSVNの利用方法、利用目的
・AnkhSVN:設定
・AnkhSVN:ソリューションエクスプローラー
・AnkhSVN:Pending Changes ウインドウ
・AnkhSVNについての詳細は・・・

▼【サーバー・クライアント】Tips・トラブルシューティング
・リポジトリブラウザの情報が更新されない
・削除したファイルの復活方法
・エラーが出てコミットができない
・「Word、Excel、PowerPoint、PDF、一太郎」などのファイルをWinMergeで比較したい
・作業フォルダを作らずにSubversionに登録したい
・ファイル名(ディレクトリ名)の大文字小文字の変更を行いたい
・TorotiseSVNのユーザー情報を消去したい、ユーザーを変更したい
・証明書やユーザーのデータはどこに保持されているのか?
・リポジトリ内でファイル検索を行いたい、管理サイズを知りたい
・削除したファイルの復活方法
・一度登録したファイルを完全に削除したい
・リポジトリ名を変更したい
・リポジトリを他のサーバーに移動する
・VisualSVN Server を再起動するには?
・VisualSVN Server Manager を閉じるとサーバーは停止してしまいますか?

▼【サーバー・クライアント】まとめ
・Visual SourceSafe と Subversion の用語の対応
・さいごに
・参考サイトについて
関連記事

※コメントを頂けると大変うれしいです。コメントはお気軽にどうぞ^-^

テーマ : IT関連 ジャンル : コンピュータ

00:52  |  ソフトウェア開発/プログラム  |  Trackback(0)  |  Comment(2)  |  EDIT  |  Top↑

*Comment

上から3番目ぐらいで、挫折しました><

用がないと、なかなか覚えれないですね^^

なんかしたいとか思うと、気合が入るけど

FPSからMMOの、まったりの世界に1年いると

抜け出すのが、大変です^^

脳みそは、使ってなんぼですね^^勉強になりました(理解不能が多いですが^^;)
こっそり見てます^^ |  2009.10.03(土) 00:52 |  URL |  【コメント編集】

■RE:こっそり見てます^^ さん

>こっそり見てます^^ さん

3番目ぐらいまで読んでくれてありがとうです。
まぁ、この記事は日記ではないので読むのは大変でしょう(^^;

FPS、QuakeLiveが面白いですよー。暇な時にちょこちょこできるし。
じぶんもMMOはまりましたが、また最近FPSにもどってます。
めっさお勧めです。^-^
スィン |  2009.10.03(土) 00:56 |  URL |  【コメント編集】

コメントを投稿する

URL
COMMENT
PASS  編集・削除するのに必要
SECRET  管理者だけにコメントを表示
 

*Trackback

この記事のトラックバックURL

この記事へのトラックバック

 | BLOGTOP |