Что означают коды результатов в SVN?
Что означают коды результатов в SVN? Мне нужна краткая справка.
9 ответов
дополнительные сведения см. В SVNBook: "состояние рабочих копий файлов и каталогов".
общее состояние:
U: рабочий файл обновлен
G: изменения в РЕПО были автоматически объединены в рабочую копию
M: рабочая копия изменена
C: этот файл конфликтует с версией в репозитории
?: этот файл не находится под контролем версий
!: этот файл находится под контролем версий, но отсутствует или неполный
A: этот файл будет добавлен в систему управления версиями (после фиксации)
A+: этот файл будет перемещен (после фиксации)
D: этот файл будет удален (после фиксации)
S: это означает, что файл или каталог был переключен с пути остальной части рабочей копии (с помощью SVN-переключателя) на бранч
Я: игнорировать
X: внешнее определение
~: изменить тип
R: элемент был заменен в вашей рабочей копии. Это означает, что файл был запланирован для удаления, а затем новый файл с тем же именем был запланирован для добавления на его место.
L : элемент заблокирован
E: элемент существовал, как он был бы создан, обновлением svn.
также обратите внимание, что результирующий код во втором столбце ссылается на свойства файла. Например:
U filename.1
U filename.2
UU filename.3
имя файла.1: файл был обновлен
имя файла.2: свойство или свойства в файле (например, svn:keywords) было обновлено
имя файла.3: файл и его свойства были обновлены
существует также статус "E"
E = файл существовал до обновления
Это может произойти, если вы вручную создать папку, которая была создана при выполнении обновления.
Я хочу сказать кое-что о статусе "G",
G: изменения в РЕПО были автоматически объединены в рабочую копию
Я думаю, что приведенное выше определение не является четким, оно может вызвать небольшую путаницу, потому что все файлы автоматически объединяются в рабочую копию, правильным должно быть:
U = элемент (U)pdated в версию репозитория
G = локальные изменения элемента mer (G)ed с хранилище
C = локальные изменения элемента (C) onflicted с репозиторием
D = элемент (D)eleted из рабочей копии
a = пункт (A)dded для рабочей копии
обычно я использую svn через gui, либо мою IDE, либо клиента. Из-за этого я никогда не могу вспомнить коды, когда мне приходится прибегать к командной строке.
Я считаю, что этот шпаргалка большая помощь: Подрывная Шпаргалка
посмотрите в справочнике Subversion: "состояние рабочих копий файлов и каталогов"
настоятельно рекомендуется для тех, кто делает почти все с SVN.
Если у вас нет доступа к документации (SVNBook), введите (Linux):
svn help status | grep \'\?\'
svn help status | grep \'\!\'
svn help status | grep \'\YOUR_SYMBOL_HERE\'
или вставьте следующую функцию в ваш ~/.файл bashrc, например:
svncode() {
symbol=
[ $symbol ] && svn help status | grep \'$(echo $symbol)\' || \
echo "usage: svncode <symbol>"
}
столбцы состояния SVN
$ svn status
L index.html
вывод команды разделены на шесть столбцов, но это не очевидно, потому что иногда графы пустые. Возможно, было бы разумнее указать пустые столбцы тире, путь ls -l
делает, а не из ничего. Тогда, например, L index.html
будет выглядеть как --L--- index.html
, что делает очевидным, что единственная информация, которую мы имеем, находится в третьей колонке о блокировке. В любом случае, как только вы знаете, что он начинает делать больше смысла.
статус SVN первый столбец: A, D, M, R, C, X, I,?, !, ~
первый столбец указывает, что элемент был добавлен, удален или иным образом изменен.
нет изменений.
A
пункт запланирован для добавления.
D
пункт планируется удалить.
M
элемент был изменен.
R
элемент был заменен в вашей рабочей копии. Это средство файл был запланирован для удаления, а затем новый файл с тем же именем был запланирован для добавления на его место.
C
содержимое (в отличие от свойств) элемента конфликтует с обновлениями, полученными из репозитория.
X
элемент связан с определением externals.
I
элемент игнорируется (например, со свойством svn:ignore).
?
деталь нет под версией управление.
!
элемент отсутствует (например, вы переместили или удалили его без использования svn). Это также указывает на то, что каталог является неполным (проверка или обновление было прервано).
~
элемент версионный как один вид объекта (файл, каталог, ссылка), но был заменен другим видом объекта.
состояние SVN второй столбец: M, C
второй столбец сообщает о состоянии файла или каталога свойства.
нет изменений.
M
свойства этого элемента были изменены.
C
свойства этого элемента конфликтуют с обновлениями свойств, полученными из репозитория.
третий столбец статуса SVN: L
третий столбец заполняется только в том случае, если каталог рабочей копии заблокирован (очистка svn обычно должна быть достаточной, чтобы очистить его)
элемент не запертый.
L
элемент заблокирован.
статус SVN четвертый столбец:+
четвертый столбец заполняется только в том случае, если элемент запланирован для добавления-с-историей.
нет истории, запланированной с фиксацией.
+
история запланирована с фиксацией.
состояние SVN Пятая колонка: S
пятый столбец заполняется только в том случае, если рабочая копия элемента переключена относительно его родитель!--34-->
Item является дочерним элементом родительского каталога.
S
пункт включен.
статус SVN шестая колонка: K, O, T, B
шестой столбец заполняется информацией о блокировке.
при использовании-show-updates файл не блокируется. Если-show-updates не используется, это просто означает, что файл не заблокирован в этой рабочей копии.
это работает копировать.
O
файл заблокирован другим пользователем или в другой рабочей копии. Это появляется только при использовании –show-updates.
T
файл был заблокирован в этой рабочей копии, но блокировка была украдена и недействительна. В настоящее время файл заблокирован в репозитории. Это появляется только при использовании –show-updates.-
B
файл был заблокирован в этой рабочей копии, но блокировка была сломана и недействительна. Файл больше не заблокировано это появляется только при использовании-show-updates.
статус SVN седьмая колонка:*
устаревшая информация отображается в седьмом столбце (только если вы передаете переключатель-show-updates). Это то, что люди, которые являются новыми для SVN, ожидают от команды, не понимая этого, только сравнивают текущее состояние файла с той информацией, которую он получил от сервера при последнем обновлении.
элемент в вашей рабочей копии современный.
*
на сервере существует более новая редакция элемента.