-2

いくつかのキーを生成するスクリプトがあります。このスクリプトは、それらをsvn-serverにコミットする必要があります。彼らは違う。何かアイデアを手伝ってもらえますか?

svnphplibとsystem/execについて考えますが、svn-serverに接続してそこにファイルを保存する方法がわかりません。

PS質問についての詳細。それは不可能でした。私たちの本番サーバーはSVNリポジトリからデプロイされ、アカウントのドキュメントを生成することもあります。それらをリポジトリに保存する必要がありました。リポジトリは、書き込みのために本番環境から閉じられました。したがって、別の方法を使用します。がっかりしてすみません。

4

3 に答える 3

1

SVNlibは非常に単純です。まず、ユーザー名とパスワードを設定します

svn_auth_set_parameter(SVN_AUTH_PARAM_DEFAULT_USERNAME, 'username');
svn_auth_set_parameter(SVN_AUTH_PARAM_DEFAULT_PASSWORD, 'password');
svn_update(realpath('working-copy'));
//TODO: change files in working copy
var_dump(svn_commit('Changelog', array(realpath('working-copy'))));

作業がない場合-コピーを使用するsvn_checkout

于 2012-05-15T11:49:44.840 に答える
1

編集:始める前に、リポジトリの新しいコピーをチェックアウトしてください。SVNはサーバーを記憶し、コミットされたものをすべて自動的にそこに保存します。

$ svn co svn-server/path/to/repo /path/to/working/copy

svnクライアントとexec()メソッドを使用して、特定のコミットメッセージを使用して、特定のパスにあるすべてのファイルをコミットできます。PHPのsubversionバインディングが安定していない限り、これを使用します。

<?php
  /* To commit all files in /path/to/working/copy */
  $message="'This is my commit message'";
  $command = "svn ci -q -m $message /path/to/working/copy";

  exec($path);
于 2012-05-15T11:47:24.717 に答える
0

PHPで次のSVN関数を参照してください

svn_commitはそのうちの1つです...

ノート

この関数は実験的です。この関数の動作、その名前、および周辺のドキュメントは、PHPの将来のリリースで予告なしに変更される可能性があります。この機能は自己責任で使用してください。

于 2012-05-15T11:45:07.087 に答える