Эй, если вы не используете переменную python, посмотрите за утверждение, вы можете обмануть механизм регулярных выражений, ускорив совпадение и начать с помощью \K
.
Этот сайт хорошо объясняет это. http://www.phpfreaks.com/blog/pcre-regex-spotlight-k ..
Но в значительной степени, когда у вас есть выражение, которое вы соответствуете, и вы хотите получить все позади, используя \ K, заставит его начать заново ...
Пример:
string = ' with some information LOOK FOR ME '
соответствие /(\)\K.+?(?=\
div
, чтобы регулярное выражение не включало это в результат. (?=\div)
заставит движок получить все перед окончанием тега div
Можно смотреть к svnbook, говорящему об ответвлениях поставщика. Это точно, что Вы пытаетесь выполнить
Можно использовать svn_load_dirs.pl для замены ручных шагов 1-5. svn_load_dirs.pl будет также отслеживать новые, перемещенные или удаленные файлы.
У меня есть та же ситуация с CMake, где я сохраняю двоичный файл win32, выпуск зарегистрировался в нашем каталоге поставщика:
branches/
trunk/
vendor/
cmake/
cmake-2.6.0/
cmake-2.6.1/
cmake-2.6.2/
...
Я затем использую svn:externals для обращения к версии CMake, которую я использую. Делает действительно легким протестировать обновление до новых версий, и это также ясно, какую версию CMake я использую.
Все корректно за исключением того, что Вам не нужны шаги 1 и 5 - если сбои шага 3 возвращаются, изменения с помощью svn возвращаются функциональность.
Я думаю, что у Вас есть две опции.
A)
Pro: удостоверится, что никакие дополнительные файлы не сохранены, если они не присутствуют в последней версии.
Довод "против": май быть трудоемким.
B)
Pro: Вы видите то, что изменилось в файлах инструмента.
Довод "против": May заканчивается с помехой. В зависимости от инструмента перезапись может вызвать ошибки.
Если некоторые проекты поставщика также используют Подверсию, можно добавить svn:externals свойство к родительскому каталогу ответвления/соединительной линии.
Смотрите на книгу SVN для получения дополнительной информации.