У нас есть отдельная ветка выпусков, latest-release
, с которой мы создаем наши выпуски с помощью нашего скрипта выпуска. Как только мы готовы сделать выпуск, мы сбрасываем ветку latest-release
до main
и создаем предварительный выпуск с помощью скрипта. Если возникают проблемы с предварительным выпуском, мы объединяем исправления в main
и применяем их к ветке latest-release
. Мы повторяем этот процесс до тех пор, пока все проблемы не будут решены, и мы сможем сделать правильный выпуск.
Этот процесс позволяет нам продолжать объединять новые возможности в main
без их включения в выпуск.
При каждом слиянии в main
мы также публикуем нестабильный выпуск с версией edge-bonsai
, который всегда помечен как предварительный выпуск.
Скрипт выпуска имеет следующую сигнатуру:
./scripts/release.ts <minor | patch | preminor | prepatch | prerelease> [--force] [--dry-run]
и выполняет следующие действия:
release-<версия>
.core/package.json
, core/package-lock.json
и CHANGELOG.md
.Чтобы сделать новый выпуск, установите текущий рабочий каталог в корневой директории garden и следуйте шагам ниже.
Сначала вам нужно подготовить бинарники выпуска и выполнить некоторые ручные тесты:
latest-release
.latest-release
до main
командой git reset --hard origin/main
.git log
, чтобы удостовериться, что последний коммит — это ожидаемый, и нет нежелательных изменений из main
, включённых в выпуск../scripts/release.ts patch
. Таким образом, коммиты увеличения версии и записи в CHANGELOG, созданные предварительными выпусками, исключаются из конечной истории.Перейдите на нашу страницу выпусков в GitHub и нажмите кнопку Редактировать для черновика, созданного автоматически от CI. Обратите внимание, что для черновиков всегда создается новый выпуск вместо замены предыдущего.
Напишите заметки к выпуску. Эти заметки должны содержать общую информацию о выпуске и упоминание всех значимых функций. Они также должны отметить всех внешних участников, а также содержать список изменений для данного выпуска.
. /scripts/draft-release-notes.ts <previous-tag> <current-tag>
. В консоли будет выведен имя файла с заметками к черновику.release-notes-${version}-draft.md
, например, release-notes-0.12.38-draft.md
) и завершите все предложенные пункты TODO.Нажмите кнопку Опубликовать выпуск.
Создайте запрос на слияние для ветки, которую скрипт отправил, и убедитесь, что он был слит как можно скорее.
Обновите файл CHANGELOG.md
, если были необходимы ручные изменения в заметках к выпускам (например, удаление коммитов, которые были отменены).
Выполните команду npm install
и сделайте коммит обновленного файла package-lock.json
.
Убедитесь, что ветка latest-release
содержит выпущенную версию, и отправьте её на удалённый сервер.Эта ветка используется для нашей документации, поэтому этот шаг важен.
Проверьте успешное выполнение действия update-homebrew
в GitHub и слейте соответствующий запрос на слияние в репозитории homebrew. Используйте обычное слияние с коммитом слияния.
Установите пакет Homebrew и убедитесь, что он работает правильно:
brew tap garden-io/garden && brew install garden-cli || true && brew update && brew upgrade garden-cli
$(brew --prefix garden-cli)/bin/garden dev
(чтобы убедиться, что вы используете упакованную версию) в примерном проекте и проверьте, всё ли в порядке.Подготовьте объявление о выпуске и опубликуйте его в наших каналах (Discord и Twitter). Если это невозможно, поручите задачу доступному участнику.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )