Возвращает комментарии к правкам в репозитории


(PECL svn >= 0.1.0)

svn_logВозвращает комментарии к правкам в репозитории

Описание

array svn_log ( string $repos_url [, int $start_revision [, int $end_revision [, int $limit = 0 [, int $flags = SVN_DISCOVER_CHANGED_PATHS | SVN_STOP_ON_COPY ]]]] )

svn_log() возвращает полную историю изменений конкретного элемента репозитория, расположенного по URL repos_url, или историю правок в конкретном диапазоне, если указан параметр start_revision. Данная функция эквивалентна команде SVN svn log --verbose -r $start_revision $repos_url.

Список параметров

repos_url

URL адрес репозитория для получения истории правок элемента.

start_revision

Начальный номер ревизии для получения. Используйте константу SVN_REVISION_HEAD для получения самой последней ревизии.

end_revision

Конечный номер ревизии для получения. По умолчанию при использовании параметра start_revision идентичен ему, в противном случае равен SVN_REVISION_INITIAL.

limit

Количество записей для получения.

flags

Любая комбинация SVN_OMIT_MESSAGES, SVN_DISCOVER_CHANGED_PATHS и SVN_STOP_ON_COPY.

Возвращаемые значения

В случае успеха, функция возвращает массив формата:

[0] => Array, ordered most recent (highest) revision first (     [rev] => Номер ревизии (целое число)     [author] => Автор правки (строка)     [msg] => Комментарий к изменениям (строка)     [date] => Дата правки в формате ISO 8601, т.е. date('c')     [paths] => Массив с путями к измененным файлам         (             [0] => Array                 (                     [action] => Обозначение характера изменений                     [path] =>  Абсолютный путь репозитория к измененному файлу                 )             [1] => ...         ) ) [1] => ...

Замечание:

Вывод всегда представлен как пронумерованный массив, содержащий массивы, кроме случаев отсутствия или только единственного экземпляра ревизий.

Значение action является подмножеством » первых букв состояний SVN, где возможные значения - это:

Действия
Буква Описание
M Элемент был изменен
A Элемент был добавлен
D Элемент был удален
R Элемент был заменен

Если изменений элемента нет, возвращается пустой массив.

Примечания

Внимание

Эта функция является ЭКСПЕРИМЕНТАЛЬНОЙ. Поведение этой функции, ее имя и относящаяся к ней документация могут измениться в последующих версиях PHP без уведомления. Используйте эту функцию на свой страх и риск.

Примеры

Пример #1 Пример использования svn_log()

<?php
print_r
svn_log('http://www.example.com/'23) );
?>

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

 Array (     [0] => Array     (         [rev] => 23         [author] => 'joe'         [msg] => 'К нашему бутерброду добавлены сыр и колбаса.'         [date] => '2007-04-06T16:00:27-04:00'         [paths] => Array             (                 [0] => Array                     (                         [action] => 'M'                         [path] =>  '/sandwich.txt'                     )             )     ) )