最後のリリースが"2004-06-09 17:05 UTC"なのは、もうメンテしてないってこと?
リリースフローの一環として、Webインターフェースから"svn copy"しようと思ってVersionControl_SVNを試してみたんだけど、どうも使えないっぽい。
"svn list"は出来た。デフォルトのsvnのパスが"/usr/local/bin/svn"だってことに気づかず四苦八苦したけど、"svn_path"で設定して解決。なのに、"svn copy"は駄目。
"svn copy"の場合、どうも内部的にexecしてる部分のコマンドライン引数を作る際に、配列そのままを結合してるみたいで、"svn Array"だか"svn copy Array"だかになってる。
パラメータの渡し方を間違ってたかな?まあ、"svn copy"できればいい訳だし、execそのまま使えばいいんだけど。
"subversion-***bindings"はPHP用には無いんだっけ?MacPortsではJAVA/Perl/Python/Ruby用のはあるんだけど、PHPのは見当たらない。これがあれば、PHPのexec使わずにsvn使えるのかな?
さて、どうしたものか。
VersionControl/SVN/List.phpをまねて問題箇所をいじったら通った。
--- Copy.php.20061003 2006-10-03 21:29:58.000000000 +0900 +++ Copy.php 2006-10-03 21:33:21.000000000 +0900 @@ -274,7 +274,10 @@ $_switches = trim($_switches); $this->_switches = $_switches; - $cmd = "$this->svn_path $this->svn_cmd $src $dst $switches"; + $cmd = "$this->svn_path $this->_svn_cmd $_switches"; + if (!empty($args)) { + $cmd .= ' '. join(' ', $args); + } $this->_prepped_cmd = $cmd;


コメントする