Что причины svn передают сбою и сообщают о файле/dir, как затруднено?

Ваше регулярное выражение не находит соответствия, и группа соответствия 0 не инициализирована. Вам нужно использовать более безопасное регулярное выражение и всегда проверять, есть ли совпадение, прежде чем пытаться получить доступ к какой-либо группе:

def redirectQuery = "&callbackUri=someValue"
def callbackUriMatch = redirectQuery =~ /(?<=[&?]callbackUri=)[^&]*/
if (callbackUriMatch) {
    println callbackUriMatch.group()
}

См. Groovy demo

Здесь, [ 111] является java.util.regex.Matcher объектом. С помощью if (callbackUriMatch) выполняется проверка, найдено ли совпадение, и, если есть совпадение, вы можете получить доступ к callbackUriMatch.group(), всему совпадению.

Детали шаблона

  • (?<=[&?]callbackUri=) - если вы хотите получить значение параметра запроса, ему должно предшествовать & или ?, затем соответствовать вашему значение ключа и =, и этот шаблон обернут конструкцией lookbehind, которая не добавляет свой сопоставленный текст к значению совпадения
  • [^&]* - класс отрицательных символов, соответствующий 0 или более символам, отличным от & ].

10
задан Mark Stahler 3 December 2008 в 01:19
поделиться

2 ответа

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

Попытайтесь выполнить очистку сначала, и если это перестало работать, вернитесь, который пробует каталог и, используют команды SVN для изменения файловой структуры каталога (удаляют/перемещают).

17
ответ дан 3 December 2019 в 16:11
поделиться

Если .svn подкаталог отсутствует, каталог отмечен затрудненный, поскольку SVN не имеет никакого способа больше знать состояние каталога. Наиболее вероятная очистка или возвращается, не может зафиксировать его, так как локальных svn данных не стало, таким образом, Вы получили две опции:

  1. комната каталог и обновление для получения последней рабочей копии
  2. если каталог содержит ценный, измененный материал, проверьте последнюю рабочую копию во временном каталоге и вручную скопируйте отсутствие .svn каталоги на месте, то SVN снова может понять его.
9
ответ дан 3 December 2019 в 16:11
поделиться
Другие вопросы по тегам:

Похожие вопросы: