Repository navigation
05 Release.ru
Mikhail Deynekin edited this page Oct 24, 2026
·
1 revision
Выпуск — это не только тег. Это запись в журнале, дата, ссылки сравнения и текст релиза, которые совпадают между собой.
python tools/ghagent.py changelog check
python tools/ghagent.py changelog suggest --since v1.1.0
python tools/ghagent.py changelog release 1.2.0 --write
python tools/ghagent.py changelog check
python tools/ghagent.py changelog notes 1.2.0 > release-body.md
gh release create v1.2.0 --notes-file release-body.md --title v1.2.0| Шаг | Результат |
|---|---|
| Проверяет версию | отказ, если версия не SemVer или уже существует |
Проверяет [Unreleased]
|
отказ, если записей нет |
| Переносит разделы |
[Unreleased] снова пустой, новая версия с датой |
| Обновляет ссылки |
[Unreleased]: …/compare/v1.2.0...HEAD, [1.2.0]: …/compare/v1.1.0...v1.2.0
|
| Перепроверяет файл | ошибки печатаются сразу, а не через неделю |
Без --write команда только показывает, что изменится.
| Изменение | Номер |
|---|---|
| исправление | патч 1.2.3 → 1.2.4
|
| новая возможность, совместимая | минор 1.2.3 → 1.3.0
|
| ломающее изменение | мажор 1.2.3 → 2.0.0
|
проект до 1.0.0
|
0.y.z: минор может ломать, и это пишется явно |
| Плохо | Хорошо |
|---|---|
fix: off-by-one in ExpiryCalculator |
«счётчик дней до оплаты больше не ошибается на сутки» |
refactor |
«синхронизация выполняется одним запросом вместо трёх» |
| «разные улучшения» | три отдельные записи с наблюдаемым следствием |
| «breaking change» отдельным разделом |
**Breaking:** в самой записи раздела Changed
|
Запись адресована пользователю: он должен понять, что изменилось в его работе, без чтения кода.
| Ловушка | Признак | Что делать |
|---|---|---|
| Журнал из лога коммитов | записи Merge pull request #12
|
писать заново по-человечески |
| Версия без даты | ## [1.2.0] |
release ставит дату сам |
| Две записи об одной версии | changelog.duplicate |
объединить |
| Забытая ссылка сравнения |
[1.2.0] не открывается |
release добавляет её сам |
| Тег без заметок | релиз пустой |
changelog notes даёт текст |
-
changelog check— код0. -
changelog notesдаёт текст, который можно отправлять как есть. - Тег
vX.Y.Zсоздан, подпись владельца, запись в журнале совпадает с тегом.
репозиторий · релизы · MIT