記載日:2006/06/12

svn checkout コマンドで リポジトリチェックアウト

Subversion 1.2.3 WindowsXP Professional SP2

Subversion でのリポジトリチェックアウトは "svn checkout" コマンドを使用して行います。チェックアウトを行うと、チェックアウト時に指定したフォルダ内にリポジトリに格納されたファイルと管理情報ファイルが生成されます。管理情報ファイルは.svn フォルダにまとめられています。管理情報を削除するとリビジョン管理ができなくなってしまうので消さないよう注意が必要です。

リポジトリをチェックアウトする前には、ディレクトリを作成しておく必要があります。ここではリポジトリを作成するディレクトリとして "work_file" という名前のフォルダを作成します。

svn checkout コマンド

Subversion(svn) の checkout コマンドは以下の書式になります。

svn checkoutリポジトリのURL) (チェックアウト先のパス


リポジトリのURL には、URL やファイルシステムのパスを指定することができます。 URL を指定する場合は http://profaim-linux/svn/profaim.base の様に指定し、ファイルシステムのパスを指定する場合は file:///d:/svn/profaim.base の様に指定します。

Windows の場合、ファイルやディレクトリの区切りに「\」を使用しますが、file://d:\svn\profaim.baseの様に\を使用するとファイルが見つけられずにエラーとなってしまいます。

チェックアウトの流れ

ディレクトリ作成

まずはリポジトリをチェックアウトするためのディレクトリを作成します。ここではカレントディレクトリに "work_file" という名前でディレクトリを作成します。

C:\> mkdir work_file

リポジトリチェックアウト

リポジトリのチェックアウトには、svn コマンドの checkout を使用します。上で作成した work_file フォルダにリポジトリの内容をチェックアウトするには以下のコマンドを実行します。リポジトリはファイルシステム file:///d:/svn/profaim.base に配置されているとします。

C:\> svn checkout file:///d:/svn/profaim.base ./work_file

これでリポジトリのチェックアウトは完了です。リポジトリから最新リビジョンのファイルがチェックアウトされます。

チェックアウトのオプション

svn checkout には様々なオプションを指定することができます。

トップフォルダのみ(URLで指定した階層のみ)をチェックアウトしたい場合は、"-N" または "--non-recursive" を指定します。

チェックアウト対象が外部リポジトリへの参照を持っていた場合、その外部参照を無視してチェックアウトするには、 "--ignore-externals" を指定します。

リビジョンを指定してチェックアウトを行うには "-r" または "--revision" に続けてリビジョン番号を指定します。


説明しなかったものも含め svn checkout に指定可能なオプションを下表にまとめます。

オプション 概要
-r [--revision] <引数> <引数>=数値 : 指定したリビジョン番号
<引数>=日付 : 指定日付が始まった時点での最新リビジョン
<引数>="HEAD" : 最新リビジョン
<引数>="BASE" : 作業コピーのベースリビジョン
<引数>="COMMITTED" : BASE またはそれ以前の最後のコミット
<引数>="PREV" : COMMITTED の直前のリビジョン
-q [--quiet] 最小限の情報のみを表示
-N [--non-recursive] 単一のディレクトリのみ
--username <引数> リポジトリ認証用のユーザID
--password <引数> リポジトリ認証ユーザのパスワード
--no-auth-cache 認証情報をキャッシュしない
--non-interactive 対話式の認証用プロンプトを表示しない
--config-dir <引数> ユーザ設定ファイルのパス
--ignore-externals 外部定義リポジトリを無視