Subversionの導入(WindowsXP)

バージョン管理システムSubversionを使ってみます。 まずは、Windows PC上でのローカル管理をします。(つまり、ネットワーク共有などはやりません)

Subversionの総本山はhttp://subversion.tigris.org/ で、こちらで「Subversion」ソフトウェアを入手できますが、 ローカル管理だけをするならば、Subversionではなく、そのGUIフロントエンドである、 TortoiseSVNだけを入手すればOKです。 そこで、TortoiseSVNをインストールします。

  1. 上記のサイトで、TortoiseSVN本体 Ver.1.3.* (TortoiseSVN-1.3.*.*-svn-1.3.*.msi) とLanguagePack(日本語) (LanguagePack-1.3.*.*-win32-ja.exe)をダウンロードします。
  2. 順番にエクスプローラ等でインストーラを起動して、インストールします。 本体をインストールすると再起動を求められますが、 LanguagePackまでインストールしてから、PCを再起動します。
  3. インストールが完了すると、 Windowsのエクスプローラ右クリックで、Subversionの操作ができるようになりますが、 まだ英語です。そこで、右クリック⇒ TortoiseSVN ⇒ Settings... で、LanguageをEnglishから日本語に変更します。 また、ログメッセージ用フォントをMS Pゴシックなどに変更します。 これで、メニューなどが日本語に変わります。
  4. ローカルPCのどこかに、リポジトリを作ります。 ここでは C:\usr\svnroot に作ることにし、このディレクトリを作ります。 エクスプローラでそのディレクトリの中に入って右クリック⇒TortoiseSVN⇒ここにリポジトリを作成を、 タイプは「FSFS」を選びます。するとそのディレクトリの中に、 conf,dav,db,hooks,locksの5つのディレクトリと、format、README.txt という2つのファイルが作られればOKです。 Subversion上でこのリポジトリを参照するさいのURLは、file:///で始まります。 例えばこのディレクトリの場合は、URLはfile:///c:/usr/svnroot となります。
  5. 既存のディレクトリをインポートして作業を開始する手順は、CVSと同じです。
    1. 既存のディレクトリを選んで、右クリック⇒TortoiseSVN⇒インポートを実行
    2. ローカル上にある既存のディレクトリを、一旦消してしまう。
    3. 新しく作業コピーの場所となるディレクトリを作成する。 (通常、1.の名前と同じ名前のディレクトリを再作成することになる)
    4. 右クリック⇒SVNチェックアウトで、作業コピーをチェックアウトする
    これは一瞬であっても目で見える状態での文書を消してしまうので、コワいという場合は、
    1. 対象のディレクトリを別名に変更する。
    2. 1.の元の名前の(空の)ディレクトリを新しく作る。
    3. 空のディレクトリを右クリック⇒TortoiseSVN⇒インポートする。
    4. その位置に、右クリック⇒SVNチェックアウトでチェックアウトする
    5. 1.で退避していた内容物を4.の作業コピー上に復旧し、追加してコミットする
    または、
    1. 対象のディレクトリを別名に変更する。
    2. 1.の元の名前の(空の)ディレクトリを新しく作る。
    3. TortoiseSVNリポジトリブラウザを開き、リポジトリ内に1.と同名のディレクトリを作る。
    4. 3.のディレクトリを2.の位置に、右クリック⇒SVNチェックアウトでチェックアウトする
    5. 1.で退避していた内容物を4.の作業コピー上に復旧し、追加してコミットする
    のいずれかの方法をとります。 以後バージョン管理の手順に入ることが出来ます。


TortoiseSVNのバージョンアップ

TortoiseSVNを使っていると、時々 「新しいバージョンができたよ!アップグレードしてチョ」 という意味の英語のメッセージが出ることがあります。 この場合、既存のプログラムをアンインストールする必要はなく、 新しいTortoiseSVNとLanguagePackをダウンロードして、 既存と同じ位置にインストールすればOKです。


リポジトリのバックアップ

TortoiseSVNでは使用できないSubversionの機能の中で最大の1つが、リポジトリのバックアップです。 より簡単に言うならば、バージョン1.3.5時点のTortoiseSVNではまだ、 Subversionリポジトリのバックアップはできません。
そこで、この機能はSubversionのバイナリ配布のsvnadmin.exeを使います。 バイナリ配布はこちら から入手できます。 これで、svnadminのdumpまたはhotcopyコマンドを使って、リポジトリのバックアップができます。

C:\Wintools\subversion\bin\svnadmin dump .\docs > svn_backup_docs.dmp

なお、このときにコンソール(コマンドプロンプト)に表示される日本語が文字化けする場合には、 環境変数APR_ICONV_PATHを設定します。

set APR_ICONV_PATH=C:\Wintools\subversion\iconv


作業コピーのバージョン管理をやめたい!.svnフォルダを消して綺麗にするには?

対象の作業コピーフォルダを右クリック⇒「エクスポート」で別のフォルダにエクスポートすればOK。 このとき選んだフォルダの中に、作業コピーフォルダから.svnだけを除いたコピーが作られます。 (つまり、C:\usr\workcopy を C:\usr2\export にエクスポートすると、 C:\usr2\export\workcopy というフォルダが作られるという事) 「バージョン管理外のファイルも参照する」にチェックを入れると、 作業コピー内にSubversionで管理していないファイルが含まれていても、 それらも含めてコピーしてくれます。


リポジトリの復旧

dumpファイルからの復旧は、svnadmin loadコマンドでおこないます。

C:\Wintools\subversion\bin\svnadmin dump C:\usr3\docs < svn_backup_docs.dmp

この復旧先(ここではC:\usr3\docs)は存在し、既にリポジトリとして初期化されている必要があります。 つまり、エクスプローラ等で空のフォルダ C:\usr3\docs を作った後、 そのフォルダに対して右クリックメニュー「TortoiseSVN」⇒「ここにリポジトリを作成」 で、リポジトリを作っておいてから上のコマンドを実行します。

Misc. Topics Top

(first uploaded 2005/05/21 last updated 2007/09/24, URANO398)

テレワークならECナビ Yahoo 楽天 LINEがデータ消費ゼロで月額500円〜!
無料ホームページ 無料のクレジットカード 海外格安航空券 海外旅行保険が無料! 海外ホテル