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
=HOST
svnserveが
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 ポート上の接続を ひとつだけ受け入れ、サービスを提供後抜けるようにします。この オプションは主にデバッグ時に利用されます。