2011-12-03 7 views

答えて

1

PHPに付属のSVN libraryを使用することをお勧めします。すべてのsvndumpツールは、個々のチェンジセットを取得して新しいリポジトリに適用するため、svn_repos_createを使用し、次にsvn_logを使用してダウンロードするチェンジセットの数を見つけてから、リモートのsvn_checkoutリポジトリとsvn_checkinを使用して新しいリポジトリにチェンジセットを適用した後、メッセージを複製します。

編集:上記のすべてを行う可能性のあるsvn_repos_hotcopyというメソッドもあります。残念ながら、ドキュメントはまったくありません。私の推測では、これはSVNのc関数にマップされ、view the source codeこれがあなたに役立つかどうかを見ることができます(私の推測は、PHP呼び出しが動作すると仮定している)。

+0

複雑なので、私はあなたのアプローチを試していません。私はshell_execでそれを実行できますか? – thethanghn

+1

もちろん、execメソッドを使っても同じことができます。 execが作成するシェルにユーザーがコードを注入できないように、入力内容を慎重に注意してください。 –

+0

私のOS(Ubuntu)にSubversionをインストールしたときにsvnrdumpコマンドが見つからないということもあります。それがどこにあるのか、それをLinux上で実行する方法を知っていますか? – thethanghn

関連する問題