svnsync

svnsync は、Subversion リモートリポジトリミラーリングツールです。簡単に言うと、あるリポジトリのリビジョンを、別のリポジトリに再現します。

ミラーリングのシナリオには、以下の二つのリポジトリがあります。ソースリポジトリと、ミラー (または 「シンク」) リポジトリです。ソースリポジトリは、svnsync がリビジョンを取得するリポジトリです。ミラーリポジトリは、ソースリポジトリから取得したリビジョンの宛先になります。どちらのリポジトリも、ローカルとリモートどちらの場合もあり得ます — 常に URL だけで指し示します。

svnsync プロセスは、ソースリポジトリの読み込み権限のみ必要です。変更することはありません。しかし言うまでもなく、svnsync は、ミラーリポジトリの読み込みと書き込みの両方ができる必要があります。

警告

svnsync は、ミラーリング操作の一部として行われなかった、ミラーリポジトリの変更に、非常に敏感です。これが起こらないようにするには、svnsync プロセスが、ミラーリポジトリに書き込む唯一のプロセスであるのが、一番間違いありません。

svnsync のオプション

--config-dir DIR

Subversion にデフォルトの場所 (ユーザのホームディレクトリにある.subversion) ではなく、指定したディレクトリから設定情報を読み出すように指示します。

--no-auth-cache

認証情報 (ユーザ名やパスワードなど) を、Subversion 管理ディレクトリにキャッシュしないよう指示します。

--non-interactive

認証が失敗したり十分な許可がないときに、認証要求 (例: ユーザ名とパスワード) するのを抑制します。これは、Subversion を自動スクリプト中で実行しており、認証要求するより単に失敗したほうが都合がいい場合に役に立ちます。

--password PASS

コマンドラインで認証用パスワードを指定します — この指定がなければ、必要な場合、Subversion はパスワードを要求してきます。

--username NAME

コマンドラインでの認証に、指定したユーザ名を使うように指示します — そうしないと、必要に応じて Subversion はその入力をユーザに求めます。

svnsync のサブコマンド

以下に様々なサブコマンドを挙げます。