Если вы разрабатываете библиотеку, инструмент, пакет или практически любое программное обеспечение, вы, вероятно, сделаете много изменений. Со всеми этими изменениями вы захотите сообщить своим пользователям, как вы можете это сделать?
Я буду искать столько информации, так как у меня есть об методах и структурах ChangeLog, чтобы сравнить мой инструмент Чанри с участием. Таким образом, вы можете придумать лучший подход для вашей команды, проекта или организации.
Ну, если вы строете «Dev.to», вы можете публиковать сообщения ChangeLog, описывающие все новые функции напрямую. Как еще вы можете это сделать?
Здесь есть две вещи:
- Какой формат и метод мы используем для версий и изменений
- Как мы отслеживаем и публикуем наши изменения
СЕМВЕР И ДЕРЖИТЕ ЧАСТЬ
Безусловно, самый распространенный метод версий — семантическая версия Отказ Это предпочтительный метод, если ваш проект должен сохранить некоторую форму совместимости с предыдущими версиями. Альтернативы — это уклон или мой собственный Hashver. Но для этой статьи я предполагаю семантическую версию.
Следующий вопрос заключается в том, как мы четким образом отформатируем изменение. Для этого наиболее распространенной структурой является Держите изменяемый файл Отказ Это просто, чистое и хорошо организовано. Есть и другие структуры и создание собственного не слишком сложно, так что не стесняйтесь немного настраивать его. Важная часть заключается в том, что у вас есть сплоченная структура и легко найти место.
При разработке ваших функций вам понадобится в конечном итоге включать их в ваш изменчивый уровень, как вы отслеживаете все это, прежде чем ваш релиз будет готов?
Ну, я видел 3 разных метода:
Нет отслеживания
Не делайте никакой отслеживания и не заметки о выпуске при выпуске. Идея вот что … Ну, хорошо, не большая часть идеи, по-настоящему вы просто ждете, пока вы не захотите освободить, то попробуйте понять все ваши изменения из памяти, возможно, ваши завершенные проблемы или закрытые запросы на потяну?
Это имеет тенденцию быть по умолчанию, так как это «ничего не делай». Конечно, это часто раза переводит, что не имеет никакого изменений.
Совершать сообщения
Вероятно, самый распространенный вариант или, по крайней мере, наиболее легко доступен, состоит в том, чтобы вытащить свои сообщения, с момента последнего выпуска и пакета все это. У вас есть инструменты и форматы, такие как обычные комбиниты в сочетании с Стандартная версия Может автоматически генерировать изменение для вас. Nodejs’s Changelog Maker делает то же самое в одном пакете. Goreleaser Имеет встроенный инструмент заметок выпуска, который действует очень похожи.
Используя файлы
Последний метод, и метод, используемый Change, заключается в хранилище «изменение файлов» в вашем репозитории, пока вы работаете над новыми функциями, исправлениями ошибок или улучшениями. Затем через какой-то инструмент шаблонов сочетать все эти файлы в ваш ChangeLog.md для пользователей. Или, по крайней мере, что-то похожее на это.
Примеры включают в себя:
- Pythons Приманка Это Генерация Что Новый страницы
- Gitlab’s Записи изменений которые они объясняют, почему в История раздел
- Вибристые Город Крийер это универсальный инструмент
Чанри Является ли новый инструмент, очень похожий на Chowt Crier, а также другие файловые решения с намерением быть достаточно настраиваемым, чтобы соответствовать потребностям любого проекта. Он также выпускается как одно двоичное двоичное использование GO так, чтобы его было легко установить на любой машине.
Что делает Чанри уникальным
В соответствии с агностическим подходом Changie стремится удалить любой язык, инструмент или рамочные требования для управления изменением изменений. Создание двоичных выпусков для всех платформ позволяет легко устанавливать независимо от того, на каком языке или инструменте ваш проект (может потребоваться добавить больше, но это цель). Change не является требованием проекта и не будет включена в любой файл зависимости. Он также не требуется для CI/CD, как Действия GitHub или Gitlab CI. Хотя, это может быть интегрировано с ними довольно хорошо. Последние Команда может быть использована для вывода последней версии для генерации выпуска.
Умение настроить много Форматирование выходов с большим количеством вариантов прийти при необходимости.
Чанри использует оперативную CLI, которая может быть расширена с Дополнительный выбор . Эта система также включает варианты проверки, чтобы проверить вещи правильно. Дополнительные параметры валидации будут добавлены позже, но это уже уменьшает опечатки и плохие входы.
Вы ссылаетесь на вашу версию в нескольких местах? Обновите их все во время вашего процесса выпуска, используя замены Что в основном просто найдите и заменить вариант.
Git не используется, а не требование, вы можете использовать любой контроль источника на любой платформе, и Чанри будет действовать так же.
Все эти параметры и функции позволяют запускать две команды (Batch + Merge), затем создайте запрос на тягу или слияние. Результатом этого Commit представляет собой точку готовности к выпуску с новым замечанием ChangeLog и версию выпуска. Вы можете использовать релизы GitHub, релизы Gitlab или публикуют их в блоге.
Примечание. Здесь используются две команды вместо одного, чтобы позволить вам включить дополнительную информацию с каждым выпуском, такими как Notes Upgrade, более подробные описания или другой информации о выпуске, не связанных с определенным изменением.
Например, Changie использует себя для собственного управления изменением изменений. Вы можете просматривать полученный Changelog , Изменения каталога и github Выпуск Действие Публикация GitHub релизы Отказ
Использование файлов может показаться немного странным для тех, кто использовал коммит сообщения или только что записал изменение изменений, поэтому я хотел бы включить несколько преимуществ использования их.
- Отдельная информация для разработчиков и пользователей : Разработчики заботятся о технических деталях, но пользователи не. Если вы должны потянуть как из Commit сообщений, это будет трудно сделать его понятно. Это не имеет значения, если ваш инструмент для разработчиков, но даже тогда некоторые детали только для внутренних разработчиков только для внутренних разработчиков.
- Опечатки : Если у вас есть опечатка в сообщении COMBING, он будет вытащен для вашего изменяющего средства. Если вы исправите его в сгенерированном изменении изменений, он все равно будет неправ в сообщении Commit. Использование файла позволяет вам обновить его, если вам нужно. Вы также можете просто удалить его полностью, если функция была позже удалена до выпуска.
- Отзывы : Использование файла позволяет включить обновления изменений в качестве части ваших запросов на тягу. Это позволяет вам получать отзывы об окончательном выходе, особенно полезным для того, чтобы получить менеджеры или технические писатели.
- Настройка : Использование сообщений Commit полагается на довольно строгое входную и выходную систему. Настройка их может быть сложно, если это возможно вообще. Обычный файл изменений можно найти здесь Но если вы хотите добавить новое поле, это невозможно.
- Используйте любой стиль фиксации : Использование Changie не ограничивает вас определение некоторого стиля фиксации, как стандартный коммит или что-то еще нравится ваша команда. Но это только для разработчиков и не должны быть созданы для ваших конечных пользователей. Это также позволяет писать меньшие более конкретные коммиты, зная, что каждый из них не будет частью ChangeLog.
Спасибо за чтение , если вы заинтересованы в попытках меняться Руководство это хорошее место для начала.
Чанри, конечно, открытый на Github Отказ Не стесняйтесь комментировать или протягивайте на Github.
Оригинал: «https://dev.to/miniscruff/changie-automated-changelog-tool-11ed»