Ответы:
В Linux, если вы хотите видеть только конфликты, передавайте статус через grep.
svn status | grep -P '^(?=.{0,6}C)'
'^.{0,6}C'работать?
(svn status) -Match '^(?=.{0,6}C)'
Просто используйте grep!
svn st | grep '^C'
Вы можете попробовать svn merge -r <revision> --dry-runи посмотреть, что в этом случае произойдет.
Если у вас есть подтверждение от http://betterthangrep.com/ , вы можете сделать следующее
svn st | ack '^C'
Если вы уже объединились, вы можете использовать
svn status
и видите заглавную букву "C" для конфликта, но обычно вы не должны видеть такой вид в своей рабочей копии.
Возможно, можно использовать svn merge --dryrunпри указании URL-адреса репозитория со всеми версиями после последней, которую вы обновили.
Например, если ваш текущий WC основан на ревизии 147, это может быть сделано:
svn merge -r 148:HEAD http://url.to.repo/repo/
Я ничего не сделал сам, так что вам придется попробовать самому.
Если вы не объединяли или не обновляли файлы, используйте команду ниже
svn status --show-updates | grep -P '.*(?=.*M)(?=.*\*).*'
Коротко
svn st -u | grep -P '.*(?=.*M)(?=.*\*).*'
Подробности
SVN не отмечает статус конфликта (C), пока вы не обновите файл (ы) с помощью svn update.
До тех пор статусы отображаются, как показано ниже
+---+------+---------------+---------------+
| M | | | 23246 file1 |
+---+------+---------------+---------------+
| | | * | 23233 file2 |
+---+------+---------------+---------------+
| M | * | 23233 file3 | |
+---+------+---------------+---------------+
M - Изменено локально
* - Обновления / Входящие с удаленного
M и * - Изменено локально, а также удаленно - Это конфликт, но svn еще не отмечен
на Mac
$ svn status | grep -e '^!'
сделал работу
вот человек для grep:
использование: grep [-abcDEFGHhIiJLlmnOoqRSsUVvwxZ] [-A число] [-B число] [-C [число]] [-e шаблон] [-f файл] [--binary-files = значение] [--color = when] [--context [= число]] [--directories = action] [--label] [--line-buffered] [--null] [шаблон] [файл ...]
^!- это регулярное выражение для каждой строки, начинающейся с !. Все противоречивые строки начинаются с!
-A 1к аргументам grep покажет вам строку после строки конфликта, которая иногда связана с конфликтом.