В настоящее время мы используем Atlassian JIRA для дефектов и регулярных циклов разработки. Мы используем SVN-репозиторий для поддержки кода. Одна из недавних вещей, которые мы делали, заключалась в разработке настраиваемой утилиты с использованием SVNKit 1.7.4 и Atlassian Fisheye, которая дала список идентификаторов id JIRA, которые фиксируются из SVN. Это делается с использованием сервисных служб Atlassian Fisheye REST. Когда мы получаем этот список путей к файлам, мы сравниваем рабочую копию с целью и применяем метод applyTextDelta SVNDeltaGenerator для изменения файлов и последующей регистрации в целевой ветке. Единственное, что нам нужно, это набор изменений из SVN для конкретного идентификатора JIRA. После того, как мы предоставим идентификатор JIRA в качестве входных данных, Fisheye извлекает данные из SVN и отправляет их обратно в список.Извлечение SVN программно, без Atlassian Fisheye
Теперь, если нам нужно обходить Fisheye и вместо этого использовать внутренние возможности SVN для достижения того же самого, что Fisheye делает для нас, что нам нужно делать? Мы следуем за svn-крючком, где сообщение фиксации всегда содержит JIRA-идентификатор, есть ли способ получить полный набор изменений, включая имена файлов, пути, каталоги, которые были добавлены с этой конкретной JIRA, например, используя сообщение commit? Одним из примеров сообщений фиксации, используемых нашими разработчиками, является «ND-9181: этот файл связан с ABC и имеет исправление для DE119919». Здесь ND-9181 - идентификатор JIRA. Аналогично, все обязательства для SVN имеют идентификатор JIRA.
То, что я хочу, чтобы указать СВН ниже:
Найти все Дорожки файлы/Файловые/каталоги из SVN Где Commit_Msg = «ND-9817»
Если кто-либо когда-либо достигнуто это или знает способ делая это программно, используя SVNKit, пожалуйста, дайте мне знать.
Это похоже на выполнимый подход. Спасибо за помощь. Я дам этому классу выстрел по нашему требованию. Между, сообщение String может принимать JIRA ID в качестве входного права, поскольку есть тест «содержит». Правильно ли я это понимаю? – YogendraJ
Точно. Вы можете настроить этот тест по своему вкусу, например. делая его нечувствительным к регистру или используя более сложный подход соответствия с использованием регулярного выражения. Кроме того, вам понадобится какой-то механизм, так что вы можете получить доступ к результатам извне 'GrepLogReceiver', это здесь просто печатает их на' STDOUT' - я сохранил его просто для краткости ':)' – zb226