Sends changes from the local working copy to the repository

# svn_commit

(PECL svn >= 0.1.0)

svn_commit — Sends 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.

### 注意

警告

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

### 例

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

### 参考

- svn_auth_set_parameter() - 認証パラメータを設定する
- » SVN documentation on svn commit