svnserve はsvnネットワー
クプロトコルによって Subversion リポジトリにアクセスすることを可
能にするものです。独立したサーバプロセスとしても起動できますし、
inetd、xinetd あるいは
sshdのような別のプロセスを使って起動すること
もできます。
クライアントが URL を送ることでリポジトリを選択すると
svnserveはリポジトリディレクトリにある
conf/svnserve.confという名前のファイルを読んで
どのような認証用データベースを使い、またどのような認証方法を使うかの
ような設定をリポジトリごとに決めます。
svnserve.confファイルの詳細は「svnserve, 専用サーバ」を見てください。
既に説明してきたコマンドとは違い、 svnserveはサブコマンドがありません— svnserveはスイッチによって排他的に制御されます。
--daemon (-d)svnserveがデーモンモードで実行 するようにします。svnserve自身がバックグラウンドで 実行され、svn ポート(通常は 3690)上に TCP/IP 接続を受け付け、接続を 用意します。
--listen-port=PORTデーモンモード時にPORTで
待ち受けるように指定します。
--listen-host=HOSTsvnserveが
HOSTで指定されるインターフェー
ス上で待ち受けるように指定します。ホスト名か IP アドレスの
いずれかで指定できます。
--foreground-dと一緒に利用すると
svnserveがフォアグラウントで待機するよ
うにできます。このスイッチは主にデバッグ時に利用されます。
--inetd (-i)svnserveが標準入力/標準出力のファ イル記述子を利用するように指定します。inetdと共に 利用する場合に適しています。
--help (-h)利用方法の概略を表示し抜けます。
--versionバージョン情報と、利用可能なリポジトリバックエンドモジュール一覧を 表示してから終了します。
--root=ROOT
(-r=ROOT)svnserveによって提供されるリポジ トリの仮想的なルートを設定します。クライアントによって指定される URL 中のパス名はこのルートに相対的なものと解釈され、その外にアクセスするこ とを許しません。
--tunnel (-t)svnserveがトンネルモードで実行す るように指定します。inetdと(標準入出力を使って接続 するという意味で)同様ですが、現在の uid に対応したユーザ名であらかじめ 認証されていると考えます。このフラグは sshのような トンネル用エージェント越しに実行するときクライアントによって指定される ものです。
--tunnel-user NAME
--tunnelスイッチと一緒に使うとsvnserve は svnserveプロセスの
UID のかわりに NAME が認証されたユーザであると見なします。SSH 越しに
一つのシステムアカウントを共有しながら、コミットの主体としては分離して
管理したいようなユーザ間では便利です。
--threads (-T)デーモンモードで実行される場合、接続ごとに svnserveがプロセスを起動するかわりに スレッドを起動するように指定します。 svnserve自身は やはり起動時にバックグラウンドに常駐します。
--listen-once (-X)svnserveが svn ポート上の接続を ひとつだけ受け入れ、サービスを提供後抜けるようにします。この オプションは主にデバッグ時に利用されます。