| |
Новые релизы FreeBSD выпускаются из ветки -STABLE с интервалом примерно в четыре месяца. Процесс выпуска релизов FreeBSD начинается за 45 дней до предполагаемой даты релиза с того, что ответственный за релиз посылает сообщение по электронной почте в адрес списков рассылки для разработчиков, чтобы напомнить последним о наличи всего лишь 15 дней на внемение новых изменений до момента заморозки кода. В этот период многие разработчики выполняют действия, известные как ``MFC-переносы''. MFC означает ``Merge From CURRENT'' (перенос из CURRENT) и описывает процесс переноса протестированных изменений из нашего дерева разработки -CURRENT в наше дерево -STABLE.
За тридцать дней до предполагаемого релиза хранилище исходных текстов переводится в
режим ``стабилизации кода''. В этот период все изменения в дереве -STABLE должны
подтверждаться Release Engineering Team <re@FreeBSD.org>
. В этот 15-дневный период
разрешены следующие типы изменений:
Исправления ошибок.
Обновление документации.
Исправления любого характера, касающиеся безопасности.
Незначительные исправления в драйверах устройств, такие, как, например, добавление новых ID устройств.
Любые другие изменения, которые одобряет группа подготовки релиза, с учётом потенциального риска.
После первых 15 дней стабилизации кода выпускается предварительный релиз, предначенный для широкого тестирования, а код переводится в состояние ``заморозки'', когда становится гораздо труднее доказывать необходимость внесения новых изменений в систему, если они не касаются исправления серьёзных ошибок или информационной безопасности. Во время заморозки кода каждую неделю выпускается не менее одной предварительной версии релиза, до тех пор, пока не будет готов окончательный вариант релиза. В дни, предшествующие выпуску окончательного релиза, группа его подготовки работает в постоянном контакте со службой безопасности и людьми, поддерживающими документацию и порты, чтобы обеспечить доступность всех компонентов, необходимых для успешного выпуска релиза.
После того, как для широкого тестирования было выпущено несколько предварительных релизов и все основные проблемы были решены, может начаться процесс ``шлифовки'' окончательного релиза.
Как сказано во вводной части, ветка RELENG_X_Y является сравнительно новым добавлением в нашей методологии подготовки релизов. Первым шагом в создании этой ветки является проверка того, что вы работаете с самой последней версией исходных текстов RELENG_X, из которой вы хотите создать новую ветку.
/usr/src# cvs update -rRELENG_4 -P -d
Следующим шагом является создание тэга точки ответвления, чтобы диффы облегчили работу с началом ветки в CVS:
/usr/src# cvs rtag -rRELENG_4 RELENG_4_8_BP src
После этого создаётся тэг новой ветки по команде:
/usr/src# cvs rtag -b -rRELENG_4_8_BP RELENG_4_8 src
Note: Использование тэгов RELENG_* разрешено только менеджерам CVS и участникам группы по выпуску релизов.
Перед тем, как окончательный релиз будет помечен, построен и выпущен, необходимо модифицировать следующие файлы, отразив в них корректную версию FreeBSD:
doc/en_US.ISO8859-1/books/handbook/mirrors/chapter.sgml
doc/en_US.ISO8859-1/books/porters-handbook/book.sgml
doc/share/sgml/freebsd.ent
src/Makefile.inc1
src/UPDATING
src/gnu/usr.bin/groff/tmac/mdoc.local
src/release/Makefile
src/release/doc/en_US.ISO8859-1/share/sgml/release.dsl
src/release/doc/share/examples/Makefile.relnotesng
src/release/doc/share/sgml/release.ent
src/share/examples/cvsup/standard-supfile
src/sys/conf/newvers.sh
src/sys/sys/param.h
src/usr.sbin/pkg_install/add/main.c
www/en/docs.sgml
www/en/cgi/ports.cgi
ports/Tools/scripts/release/config
Новый релиз должен быть также отражён в файлах замечаний к релизу и информации о замеченных ошибках (в ветке релиза), а файлы соответствующим образом обрезаны (в ветке stable/current):
src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml
src/release/doc/en_US.ISO8859-1/errata/article.sgml
Утилита sysinstall должна быть обновлена и указывать количество доступных портов и объём дискового пространства, требуемого для Колллекции Портов. На данный момент эта информация хранится в файле src/release/sysinstall/dist.c.
После построения релиза для оповещения мирового сообщества о выпусек релиза необходимо обновить некоторые файлы.
www/share/sgml/includes.release.sgml
www/share/sgml/includes.release.xsl
www/en/releases/*
www/en/releng/index.sgml
www/en/news/news.xml
src/share/misc/bsd-family-tree
При готовности окончательного релиза следующая команда создаст тэг RELENG_4_8_0_RELEASE.
/usr/src# cvs rtag -rRELENG_4_8 RELENG_4_8_0_RELEASE src
Менеджеры документации и портов отвечают за внесение тэга в соответствующие ветки с тэгом RELEASE_4_8_0.
Иногда в последний момент, уже после создания последних тэгов может потребоваться внесение исправлений. На практике это не является проблемой, так как CVS позволяет выполнять манипуляции с тэгами по команде cvs tag -d tagname filename. Очень важно, чтобы все последние изменения были помечены соответствующим тэгом, как часть релиза. Релизы FreeBSD должны быть всегда повторяемыми. Локальные изменения в параметры окружения выпускающего релиз недопустимы.
Этот, и другие документы, могут быть скачаны с ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.
По вопросам связанными с FreeBSD, прочитайте документацию прежде чем писать в <questions@FreeBSD.org>.
По вопросам связанным с этой документацией, пишите <doc@FreeBSD.org>.
По вопросам связанным с русским переводом документации, пишите <frdp@FreeBSD.org.ua>.
Закладки на сайте Проследить за страницей |
Created 1996-2024 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |