svn_commit

(PECL svn >= 0.1.0)

svn_commitОтправляет изменения из рабочей директории в репозиторий

Описание

svn_commit ( string $log , array $targets [, bool $recursive = TRUE ] ) : array

Отправляет изменения в файлах локальной рабочей копии, перечисленные в массиве 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('Комментарий Bob\'а', array(realpath('calculator'))));
?>

Результат выполнения данного примера:

array(
  0 => 1415,
  1 => '2007-05-26T01:44:28.453125Z',
  2 => 'Bob'
)

Смотрите также