(PECL svn >= 0.1.0)
svn_commit — Sends changes from the local working copy to the repository
$log
, array $targets
[, bool $dontrecurse
= false
] )
Commits changes made in the local working copy files enumerated in
the targets
array to the repository, with the
log message log
. Directories in the targets
array will be recursively committed unless dontrecurse
is set to true.
Note: This function does not have any parameters for specifying authentication, so a username and password must be set using svn_auth_set_parameter()
log
String log text to commit
targets
Array of local paths of files to be committed
This parameter must be an array, a string for a single target is not acceptable.
Note: 相对路径将会以PHP执行文件所在目录作为当前工作目录进行解析. 如果希望依据脚本所在目录解析, 使用 realpath() 或 dirname(__FILE__).
dontrecurse
Boolean flag to disable recursive committing of
directories in the targets
array.
Default is FALSE
.
Returns array in form of:
array( 0 => integer revision number of commit 1 => string ISO 8601 date and time of commit 2 => name of committer )
Returns FALSE
on failure.
此函数是实验性的。 此函数的表象,包括名称及其相关文档都可能在未来的 PHP 发布版本中未通知就被修改。使用本扩展风险自担 。
Example #1 Basic example
This example commits the calculator directory to a repository, using the username Bob and the password abc123 (hopefully, his password is stronger):
<?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' )