Подтвердить что ты не робот

Как вы создаете заметки о выпуске?

[Вопрос]
Кто-нибудь отмечает выпуск продукта через автоматизированный процесс? Если да, то как. Особенно при непрерывной интеграции. Вы просто используете script для анализа файлов журнала для проблем, исправленных для этой версии, для создания соответствующего текстового файла?

[Background]
Недавно я реализовал непрерывную интеграцию для своих проектов по хобби. Как часть этого, у меня есть отчеты по отслеживанию проблем, связанные с моими сборками. Однако для релизов я хочу сделать то же самое и создать файлы заметок выпуска, похожие на файл notes.txt nhibernate, который я считаю очень чистым.

[Пример]

Строка 1.2.1

Исправлена ​​ошибка:

* [ID-1] - The system doesn't accept valid usernames

Улучшения:

* [ID-2] - Saving the file takes 3 minutes when it should take a few seconds. 

Новые возможности:

* [ID-3] - Allow users to refresh the page using the F5 key.

Завершено задание:

* [ID-4] - Document undocumented configuration properties.
4b9b3361

Ответ 1

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

Ответ 2

Если вы используете maven, для этой цели существует maven change plugin, и поэтому создание этого отчета может быть легко автоматизировано в непрерывном режиме интеграционного процесса.

Ответ 3

Если вы используете JIRA (что я предлагаю в любом случае), он может автоматически генерировать примечания к выпуску для вас. Встроенный формат довольно упрощен, но во многих случаях хорошо работает. Контент настраивается на точку, хотя это не последнее слово с точки зрения гибкости.

Если вы ищете лучшие заметки о выпуске от JIRA, попробуйте PDF View Plugin. Это:

  • больше, чем просто исходный список "завершенных проблем" (например, инструкции по установке и обновлению, юридические данные, выполненные тесты, измененные файлы).
  • больше контроля над включенным (исключая определенные статусы, разрешения, типы проблем и т.д.).
  • позволяет распространять документ Release Notes в электронной почте (в формате PDF) или распечатываться на бумаге.

Отказ от ответственности: я являюсь разработчиком этого коммерческого дополнения JIRA.

enter image description here

Ответ 4

Я борюсь с теми же проблемами. В нашей разработке мы используем svn/jira, и у нас есть настраиваемый инструмент, который будет пытаться построить и проверить тест работоспособности до того, как они будут совершены, - и разработчик вводит номер jira как часть этого процесса (он проверяет число). Это число джира затем включается в фиксацию SVN

С этого момента мы создаем заметку о выпуске между двумя точками в svn, а из комментариев по каждой фиксации может построить список проблем, которые были зафиксированы, и заполнить примечание к выпуску.

Проблема заключается в том, что 1. проблемы в примечании к выпуску необходимо вводить в виде изменений кода. Проблемы, исправленные без изменения кода, не включаются. 2. Если разработчик находится на полпути через исправление, он появится в примечаниях к выпуску, если это не может быть.

Я хочу найти решение с минимальными накладными расходами вручную, где мы можем взять любую сборку из нашей системы CI и превратить ее в выпуск.

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

Другой вариант заключается только в том, чтобы включать выпущенные выпуски в примечании к выпуску. Однако проблема заключается в том, что если разработчик исправит исправление в выпуске A, но не закрыл проблему в момент выпуска A, а затем не сделал никаких изменений кода и закрыл проблему после того, как был выпущен A, как я теперь автоматически включаю эту (возможно, я мог бы искать все jiras, закрытые между релизами A и B....)

Спасибо за чтение

Ответ 5

В моей компании мы используем bugzilla. Мы используем веху, чтобы отметить ошибку с определенным номером выпуска. Затем мы создаем отчет xml для всех ошибок с определенной вехой, и мы используем небольшой script, чтобы сгенерировать примечания к выпуску.

Это то, что можно легко обобщить на любое программное обеспечение для отслеживания ошибок в целом.

Я думаю, он также может быть привязан к комментариям в сообщениях фиксации в вашей системе управления версиями. Можно было бы запросить перечислить все комментарии коммитов на элементе управления verson и затем фильтровать все комментарии с помощью определенного тега.

Ответ 6

Предполагая, что разработчики не являются частными лицами и являются частью команды, которая получает задания и делает их, список того, что было сделано и должно быть частью UAT, - это примечание к выпуску defacto. Списки изменений файла и т.п. не имеют значения и могут быть тривиально извлечены из исходного управления.

Поскольку очень сложно обеспечить политику разработчиков, проверяющих код с номерами выпуска в нем, я не беспокоюсь. Я спрашиваю об этом при просмотре кода. Я также держу список того, над чем мы работаем. Материал, который выполняется, добавляется в журнал прямо перед выпуском mvn: готовятся команды. Затем я перехожу к QA и UAT.

Это вряд ли будет масштабироваться до сотен вопросов в неделю. В таких случаях предпочтительнее будет более надежная система.

Ответ 7

Вы можете использовать такой инструмент, как doxygen, чтобы сделать это, но это утомительно, чтобы прокомментировать то, что ожидает doxygen. Обычно я получаю их вручную.

Не уверен, но не похоже ли что-то вроде FogBugz?

Ответ 8

Для тех, кто работает с .NET и TFS, вы можете использовать TfsChangeLog, чтобы автоматически генерировать ваши заметки о выпуске.

TFS ChangeLog позволяет пользователям Team Foundation Server (TFS) извлекать информацию, связанную с изменениями и связанными с ними WorkItems, в формат XML, который преобразуется в HTML. TFSChangeLog автоматически создает заметки о журнале изменений/выпусках на основе выбранного диапазона набора параметров.

TFS содержит историю версий файлов с помощью зарегистрированных наборов изменений и связанных с ними WorkItems. Эта точная информация будет использоваться для создания заметок выпуска. Менеджер конфигурации/выпуска может использовать либо поля системных данных, либо настраиваемые поля для создания содержимого заметок. Мощная поддержка XSLT 2.0 для преобразования данных из необработанного формата XML предоставляется из коробки, что, безусловно, открывает возможность генерации данных в различных форматах. Поддержка XSLT 2.0 позволяет очень легко применять условия фильтрации для преобразования данных, требуемые пользователями.

Ответ 9

Недавно я столкнулся с аналогичной проблемой и улучшил существующий плагин maven для этого.

Если вы используете Git для управления источником и создаете свой проект с использованием Maven, это может быть хорошим решением: https://github.com/pankajtandon/maven-git-commit-id-plugin#releasenotes