2011-01-31 15 views
0

dev-test-stage-live環境から移動するためのautomagic svn 'tag/export'ボタンを作成しようとしています。'svn copy url url'コマンドを実行するphp + webdav

phpvnclient の若干修正された(固定)バージョンを使用して、httpd要求をwebdav形式でjira svnリポジトリに送信しています。私は、任意のPHPライブラリ/モジュールに頼ることなく、これを達成するためにコアPHPコードのみを使用したいと思います。私はshell_exec(私は既に働いている)を使用することを避ける方が好きです。

私が作成していますプロセスがある:。

1.)($主要$のマイナーを、現在の環境のリリースタグを取得します$ svn_version)

2)$マイナー#

3をインクリメントします。 。)のために/トランク最新のバージョン番号を取得し、作る、新しいリリースタグの$ svn_version

4)のsvnコピー/トランク/タグ/ $ new_release_tag

http://www.webdav.org/specs/rfc4918.html#copy.for.collections

ステップ3では、/ trunkのバージョン番号を取得するためにwebdavリクエストを送信できますが、/ webdavコマンドを送信して、/ trunkコレクションを/ tagsにコピーすることはできません。/$ new_release_tag

私は多分それはコミットメッセージを期待したり、私が最初にMKCOLする必要があると思った409

のHTTP応答のステータスを取得しています。私はコミットメッセージを送信するためのドキュメントを見つけることができませんし、MKCOL/tags/$ new_release_tagを試してみると409も手に入ります。

私はJiraスタジオのオープンチケットを持っていますが、

に:(任意のアイデアを「カスタムSVNクライアントのをサポートしていませんか?

答えて

0

私はそれだけで、これが制御されたタグ付けされたリリースのコピーを作る私のユースケースには適用されませんコピーしautoversioning

+0

を使用する方が簡単だと思います私はsvnサーバーと通信するためにwebdav httpプロトコルを使用しようとしていますが、私はフルfledged wを実装していませんebdavクライアント。 – jshanman