PHP Conference Nagoya 2025

svn_commit

(PECL svn >= 0.1.0)

svn_commitSends changes from the local working copy to the repository

説明

svn_commit(string $log, array $targets, bool $recursive = true): array

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 recursive is set to false.

注意: 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.

注意: 相対パスは、PHP バイナリが存在するディレクトリを基準として解決されます。呼び出しもとのスクリプトの作業ディレクトリを基準とするには、realpath() あるいは dirname(__FILE__) を使用してください。

recursive

Boolean flag to disable recursive committing of directories in the targets array. Default is true.

戻り値

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.

例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'
)

注意

警告

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

参考

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top