(PECL svn >= 0.1.0)
svn_commit — 変更内容を、ローカルの作業コピーからリポジトリに送信する
$log
, array $targets
[, bool $recursive
= true
] )
配列 targets
で指定した、
ローカルの作業コピーで変更されたファイルの内容をリポジトリにコミットします。
ログメッセージは log
で指定します。
targets
にディレクトリを指定すると、
recursive
に FALSE
を設定しない限りは再帰的にコミットを行います。
注意: この関数では、認証関連のパラメータを指定することができません。 ユーザー名やパスワードは svn_auth_set_parameter() で指定する必要があります。
log
コミット時に使用するログメッセージ。
targets
コミットするローカルパスやファイルの配列。
このパラメータは配列である必要があります。 対象がひとつだけであっても、文字列で指定することはできません。
注意: 相対パスは、PHP バイナリが存在するディレクトリを基準として解決されます。呼び出しもとのスクリプトの作業ディレクトリを基準とするには、 realpath() あるいは dirname(__FILE__) を使用してください。
recursive
配列 targets
にディレクトリが指定された場合の再帰コミットを無効にするフラグ。
デフォルトは TRUE
です。
以下のような形式の配列を返します。
array( 0 => そのコミットのリビジョン番号 1 => コミット日時を表す ISO 8601 形式の文字列 2 => コミッターの名前 )
失敗した場合は FALSE
を返します。
この関数は、 実験的 なものです。この関数の動作・ 名前・その他ドキュメントに書かれている事項は、予告なく、将来的な PHP のリリースにおいて変更される可能性があります。 この関数は自己責任で使用してください。
例1 基本的な例
この例は、calculator ディレクトリの内容をリポジトリにコミットします。 ユーザー名は Bob、パスワードは abc123 (ほんとはもうちょっとマシなパスワードにしたほうがいいでしょうね) です。
<?php
svn_auth_set_parameter(SVN_AUTH_PARAM_DEFAULT_USERNAME, 'Bob');
svn_auth_set_parameter(SVN_AUTH_PARAM_DEFAULT_PASSWORD, 'abc123');
var_dump(svn_commit('Log message of Bob\'s commit', array(realpath('calculator'))));
?>
上の例の出力は以下となります。
array( 0 => 1415, 1 => '2007-05-26T01:44:28.453125Z', 2 => 'Bob' )