apacheから一般ユーザ権限でsvnコマンド実行

2011/01/26

PHPでsvnをある程度自動化したいが、apache権限で実行してしまうので色々不都合がある。 apacheユーザをsvn認証に登録する方法も考えられるが、やはり一般ユーザで実行するのがスマート。

てことで、svnコマンドのオプションを調べたら、

--username --password

がありました(そのままじゃん)。 ※当たり前ですが、ユーザ名、パスワード(BASIC認証)は予め設定してあることが前提

svnディレクトリ追加の例

$cmd = "svn mkdir http://hoge.com/svn/repos_name/trunk -m 'trunk' --username 'xxx' --password 'xxx'";
exec($cmd, $output, $ret);

ちなみに、--no-auth-cache を利用すると認証情報をキャッシュしない。