svn_status

(PECL svn >= 0.1.0)

svn_status — Повертає SVN-статус файлів та директорій робочої копії

Опис

svn_status(string $path, int $flags = 0): array

Повертає SVN статус файлів і директорій робочої копії, що зазнали модифікації, додавання, видалення та інших змін.

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

path

Локальний шлях до файлу або директорії для отримання статусу.

Зауваження: Відносні шляхи будуть обчислені, якби поточна робоча директорія була домашньою папкою самого PHP Щоб використовувати робочу директорію скрипта, що викликає, використовуйте realpath()или dirname(__FILE__

flags

Будь-яка комбінація прапорів Svn::NON_RECURSIVE Svn::ALL(вне зависимости от статуса модификации),Svn::SHOW_UPDATES (до записів будуть додані пункти зі старими правками), Svn::NO_IGNORE(игнорированиеsvn:ignore властивостей при скануванні нових файлів) та Svn::IGNORE_EXTERNALS

Значення, що повертаються

Повертає пронумерований масив, що складається з асоціативних масивів із докладними статусами елементів у репозиторії:

Array ([ ] => Array ( // інформація про елемент ) [ ] => ... )

Інформація про елемент може бути отримана з асоціативного масиву за двома ключами:

path

Шлях до файлу/директорії у локальній файловій системі.

text_status

Код текстового статусу елемент. Дивіться Для інформації про можливі значення, зверніться до константам статусів

repos_text_status

Код текстового статусу елемента у репозиторії. Відображається якщо updateустановлен в**true**. Дивіться Для інформації про можливі значення, зверніться до константам статусів

prop_status

Код текстового статусу властивостей елемента. Дивіться Для інформації про можливі значення, зверніться до константам статусів

repos_prop_status

Код текстового статусу властивостей елемента у репозиторії. Відображається якщо updateустановлен в**true**. Дивіться Для інформації про можливі значення, зверніться до константам статусів

locked

Чи буде заблоковано елемент чи ні. (Встановлюється за true

copied

Чи буде скопійовано елемент (заплановано для додавання історії правок). (Встановлюється за true

switched

Чи буде елемент перемикання використовуючи команду перемикання. (Встановлюється за true) .

Наступні ключі встановлюються тільки якщо елемент має версію:

name

Ім'я елемента у репозиторії.

url

URL-адреса елемента у репозиторії.

repos

URL-адреса репозиторію.

revision

Номер ревізії робочої копії.

kind

Тип елемента, тобто. файл чи директорія. Дивіться Для інформації про можливі значення, зверніться до константам типів

schedule

Заплановане дії елемента, тобто. додавання чи видалення. Константи для цих магічних чисел не доступні, вони емулюються відповідно до правила:

Loading...

deleted

Буде чи ні елемент буде видалено, але ревізія батька не збільшиться (Встановлено при true

absent

Буде чи ні елемент позначений відсутнім. Subversion буде пам'ятати, що в цьому місці щось розташоване, але не знатиме що саме. (Встановлюється за true

incomplete

Буде чи ні вміст директорії вважатися неповним. (Встановлюється за true

cmt_date

Отметка времени в формате Unix о дате последней правки (Не зависит отupdate

cmt_rev

Номер ревизии последнего обновления. (Не зависит отupdate

cmt_author

Имя автора последней правки. (Не зависит отupdate

prop_time

Позначка часу у форматі Unix про останню актуальну версію властивостей.

text_time

Позначка часу у форматі Unix про останню актуальну версію тексту.

Приклади

Приклад #1 Простий приклад

Наведений нижче приклад ілюструє базове, теоретичне використання цієї функції

Loading...

Висновок наведеного прикладу буде схожим на:

Array (
    [0] => Array (
        [path] => /home/bob/wc/sandwich.txt
        [text_status] => 8 // элемент был изменён
        [repos_text_status] => 1 // нет доступной информации, выполнить update
        [prop_status] => 3 // нет изменений
        [repos_prop_status] => 1 // нет доступной информации, выполнить update
        [name] => sandwich.txt
        [url] => http://www.example.com/svnroot/deli/trunk/sandwich.txt
        [repos] => http://www.example.com/svnroot/
        [revision] => 123
        [kind] => 1 // file
        [schedule] => 0 // не запланировано никаких действий
        [cmt_date] => 1165543135
        [cmt_rev] => 120
        [cmt_author] => Alice
        [prop_time] => 1180201728
        [text_time] => 1180201729
    )
)

Примітки

Увага

Ця функція є ЕКСПЕРИМЕНТАЛЬНОЇ. Поведінка цієї функції, її ім'я та документація, що до неї належить, можуть змінитися в наступних версіях PHP без повідомлення. Використовуйте цю функцію на свій страх та ризик.

Дивіться також