Что означают коды результата в SVN? Мне нужна быстрая справка.
Дополнительные сведения см. В SVNBook: «Состояние файлов и каталогов рабочей копии» .
Общие статусы:
U : рабочий файл обновлен
G : Изменения в репо были автоматически объединены в рабочую копию
М : Рабочая копия изменена
C : Этот файл конфликтует с версией в репозитории
? : Этот файл не находится под контролем версий
! : Этот файл находится под контролем версии, но отсутствует или не полностью
A : Этот файл будет добавлен в контроль версий (после коммита)
A + : этот файл будет перемещен (после коммита)
D : Этот файл будет удален (после коммита)
S : Это означает, что файл или каталог был переключен с пути остальной части рабочей копии (используя svn switch) на ветвь
Я : игнорируется
X : внешнее определение
~ : Тип изменен
R : Предмет был заменен в вашей рабочей копии. Это означает, что файл был запланирован для удаления, а затем на его место было запланировано добавление нового файла с тем же именем.
L : предмет заблокирован
E : Элемент существовал, как он был бы создан, обновлением SVN.
E
? Вся документация гласит: «Существовал», что не очень полезно.Также обратите внимание, что код результата во втором столбце ссылается на свойства файла. Например:
filename.1: файл был обновлен
filename.2: свойство или свойства файла (например, svn: Keywords) были обновлены
filename3: и файл, и его свойства были обновлены
источник
Вы всегда можете получить список, запустив:
источник
Я хочу сказать кое-что о статусе "G",
G: Изменения в репо были автоматически объединены в рабочую копию
Я думаю, что приведенное выше определение не является понятным, оно может вызвать небольшую путаницу, потому что все файлы автоматически объединяются в рабочую копию, правильное должно быть:
U = элемент (U) обновлен до версии хранилища
G = локальные изменения элемента, добавленные в хранилище (G)
C = локальные изменения элемента (C) по сравнению с хранилищем
D = элемент (D), выбранный из рабочей копии
A = элемент (A) добавлен в рабочую копию
источник
Также есть статус «E»
E = файл существовал до обновления
Это может произойти, если вы вручную создали папку, которая была бы создана путем выполнения обновления.
источник
Я обычно использую SVN через графический интерфейс, либо мою IDE или клиента. Из-за этого я никогда не могу вспомнить коды, когда мне приходится прибегать к командной строке.
Я нахожу этот шпаргалку большой помощью: Шпаргалка Subversion
источник
Столбцы статуса SVN
Вывод команды разбит на шесть столбцов, но это не очевидно, потому что иногда столбцы пусты. Возможно, имело бы больше смысла указывать пустые столбцы с тире, кстати
ls -l
, вместо ничего. Тогда, например,L index.html
будет выглядеть--L--- index.html
, что делает очевидным, что единственная информация, которую мы имеем, находится в третьем столбце о блокировке. Во всяком случае, как только вы знаете, что это начинает иметь больше смысла.Первый столбец статуса SVN: A, D, M, R, C, X, I,?,!, ~
Первый столбец указывает, что элемент был добавлен, удален или иным образом изменен.
A
Предмет запланирован для дополнения.D
Элемент запланирован для удаления.M
Предмет был изменен.R
Товар был заменен в вашей рабочей копии. Это означает, что файл был запланирован для удаления, а затем на его место было запланировано добавление нового файла с тем же именем.C
Содержимое (в отличие от свойств) элемента конфликтует с обновлениями, полученными из хранилища.X
Предмет связан с определением внешнего вида.I
Элемент игнорируется (например, с помощью свойства svn: ignore).?
Элемент не находится под контролем версий.!
Предмет отсутствует (например, вы переместили или удалили его без использования SVN). Это также указывает на то, что каталог неполон (извлечение или обновление было прервано).~
Элемент версионирован как один тип объекта (файл, каталог, ссылка), но был заменен другим типом объекта.SVN Статус второй столбец: M, C
Во втором столбце указывается состояние свойств файла или каталога.
M
Свойства этого элемента были изменены.C
Свойства этого элемента конфликтуют с обновлениями свойств, полученными из хранилища.SVN Статус, третий столбец: L
Третий столбец заполняется только в том случае, если каталог рабочей копии заблокирован (обычно очистки svn должно быть достаточно для его очистки)
L
Предмет заблокирован.SVN Status четвертый столбец: +
Четвертый столбец заполняется, только если элемент запланирован для добавления с историей.
+
История запланирована с коммитом.SVN Status пятая колонка: S
Пятый столбец заполняется, только если рабочая копия элемента переключена относительно его родителя.
S
Пункт переключен.SVN Статус шестой столбец: K, O, T, B
Шестой столбец заполнен информацией о блокировке.
K
Файл заблокирован в этой рабочей копии.O
Файл заблокирован другим пользователем или в другой рабочей копии. Это появляется только при использовании –show-updates.T
Файл был заблокирован в этой рабочей копии, но блокировка была украдена и недействительна. В данный момент файл заблокирован в хранилище. Это появляется только при использовании –show-updates.-B
Файл был заблокирован в этой рабочей копии, но блокировка была нарушена и является недействительной. Файл больше не заблокирован. Отображается только при использовании –show-updates.SVN Status седьмой столбец: *
Устаревшая информация отображается в седьмом столбце (только если вы пропустите параметр –show-updates). Это то, что люди, которые являются новичками в SVN, ожидают, что команда выполнит команду, даже не осознавая, что она сравнивает только текущее состояние файла с информацией, полученной с сервера при последнем обновлении.
*
На сервере существует более новая версия элемента.источник
Взгляните на справочник Subversion Book: «Состояние файлов и каталогов рабочей копии»
Настоятельно рекомендуется для тех, кто делает что-то с SVN.
источник
Если у вас нет доступа к документации ( SVNBook ), введите (Linux):
или вставьте следующую функцию в ваш файл ~ / .bashrc, например так:
источник