Googleの検索では常にこの記事が上位に来るため、皆さんこのページヘのアクセスが絶えません。
ですが、この記事は2010年に起稿したため使用しているソフトウエアなどがすでに陳腐化しています。
2014年4月に「
Subversion 1.8.13 をWindows 7 64-bit OSにインストールする」を再起稿しましたので、そちらを参照いただければと思います。
こちらの記事にはリポジトリのアップグレードの手順が含まれていますので、目的に応じてどちらかの記事を見ていただければと思います。
**********
Windows XPからWindows 7 にアップグレード(新規インストール)したのに伴い、Subversionも1.4.6からアップグレードを行った。
動作環境:
Windows 7 64bit
Subversion 1.6.6 (svnプロトコル)
インストール手順
【準備】
1.移行元リポジトリのバックアップ
Subversion 1.4.6のリポジトリをdumpユーティリティーにてバックアップを行う。
これは、アップグレードによるバージョンの相違を新サーバーにロードするときに吸収してもらうため。
コマンドラインから、svnadmin dumpコマンドを実行する。
コマンド例:
svnadmin dump C:\Users\xxxx\svn\repos > full.dump
2.設定ファイルのバックアップ
リポジトリのconfディレクトリ配下のsvnプロトコルで使用するパスワードやアクセス権関連の設定ファイルをバックアップする。
【インストール】
1.Subversionのダウンロード
最近、SubversionはApacheプロジェクトの1つに加わったようだ。Windows用のインストーラーは以下のURLからいくつか選択が可能。
今回は、Apache 2.2-compatible を選択した。
ダウンロードしたバイナリーは、「Setup-Subversion-1.6.6.msi」
2.Subversionのインストール
Setup-Subversion-1.6.6.msi を起動しデフォルトのままインストールする。
インストール先は、「C:\Program Files (x86)\Subversion」。
3.リポジトリの作成
Windows XPのときは、C:ドライブ直下に「C:\svn\repos」といった感じでリポジトリ用のディレクトリを作成したが、今回、Windows 7では自分のユーザーディレクトリ配下に作成することにする。
コマンドは以下のような感じになる。
svnadmin create C:\User\xxxx\svn
注:xxxx部はユーザー名
4.リポジトリのバックアップファイルからのロード
準備作業で取得した旧リポジトリのバックアップから今作ったばかりのリポジトリにロードを行う。
コマンドは、以下の感じで。
svnadmin load C:\Users\xxxx\svn\repos < full.dump
5.設定ファイルの移行
準備作業でバックアップしたconfディレクトリのファイルをコピーする。
今回は、特に新しい設定は行わなかったので、旧設定ファイルをそのまま上書きした。
6.Windowsサービスの登録
今回はsvnプロトコルにてアクセスの提供を行うので、Windowsサービスを自動起動モードで登録する。
コマンドのサンプルは以下の通り。(長いので複数行に分けてますが実際は1行です)
sc create svn binpath= "C:\Program Files (x86)\Subversion\bin\svnserve.exe --service -r C:\Users\xxxx\svn" displayname= "Subversion Server" depend= Tcpip start= auto
このときの注意としては、コマンドプロンプトを起動するときに、「管理者として実行」する必要があること。
これはWindows XPではなかった手順なので注意が必要。
具体的には、スタートメニューから、アクセサリと選択し、表示されたコマンド プロンプトを右クリックし、「管理者として実行(A)...」を選択すればよい。
7.Subversionサービスの起動
コントロールパネルから管理ツール、コンピュータの管理、サービスとアプリケーションの順にメニューを選択し、サービスを開く。
"Subversion Server"サービスを選択し、サービスを起動する。
コントロールパネルで管理ツールメニューが見つからない場合は、右上の「表示方法」で「小さいアイコン」を選択すると、すべてのメニューが出てくるので、容易に見つかるはず。
8.最後にSubversionクライアントからアクセス確認を行って、作業は終了。