# Подготовка релизов FreeBSD

### Murray Stokely

`<murray@FreeBSD.org>`

$FreeBSD: doc/ru_RU.KOI8-R/articles/releng/article.sgml,v 1.13 2010/07/15 06:42:48 taras Exp $

Авторские права

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

[ По разделам / Одним файлом ]

# 1. Введение

Разработка FreeBSD представляет собой весьма открытый процесс. FreeBSD составляется в результате общих усилий тысяч людей по всему миру. Проект FreeBSD предоставляет анонимный публичный доступ по протоколу CVS[1], так что любой может получить доступ к журналу изменений, разницам (патчам) между ветками разработки и другим продвинутым возможностям, которые даёт строгое управление исходным кодом. Это сильно помогает в привлечении к FreeBSD всё большего количества талантливых разработчиков. Однако, и я думаю, что все со мной согласятся, наступит хаос, если доступ по записи будет открыт всем в Internet. Поэтому только ''избранная'' группа примерно из 300 человек имеет доступ по записи в CVS-хранилище. Эти коммиттеры[5] отвечают в целом за разработку FreeBSD. Выбираемая из самых заслуженных разработчиков группа правления[6] обеспечивает некоторый уровень управления проектом.

Темп разработок, ведущихся во FreeBSD, оставляет мало времени на тщательную доводку системы до качества продуктивного релиза. Для решения этой проблемы разработка ведётся в два параллельных потока. Основной веткой разработки является HEAD, она же основная линия нашего дерева CVS, известная также под именем ''FreeBSD-CURRENT'' или, для краткости, ''-CURRENT''.

Поддерживается и более стабильная ветка, известная как ''FreeBSD-STABLE'' или, для краткости, ''-STABLE''. Обе ветки находятся в основном CVS-хранилище в Калифорнии и реплицируются при помощи CVSup[2] на зеркала по всему миру. FreeBSD-CURRENT[7] является ''передним краем'' работ над FreeBSD, через который попадают все изменения в системе. FreeBSD-STABLE является веткой разработки, из которой создаются основные релизы. В эту ветку изменения попадают разными путями, и предполагается, что сначала они попали в FreeBSD-CURRENT, где были тщательно протестированы сообществом наших пользователей.

В промежутке между релизами машинами Проекта FreeBSD, выделенными для построения системы, ежемесячно автоматически собираются снэпшоты, которые доступны для закачки по адресу ftp://ftp.freebsd.org/pub/FreeBSD/snapshots/. Общедоступность снэпшотов бинарных релизов, а также желание сообщества наших пользователей отслеживать работу над -STABLE при помощи CVSup и ''`make` `world`''[7] помогает поддержать весьма хорошее качество FreeBSD-STABLE, даже до выполнения мероприятий проверки качества, предваряющих выпуск основных релизов.

В процессе выпуска релиза пользователи постоянно присылают сообщения об ошибках и пожелания по расширению функциональности. Сообщения о проблемах попадают в нашу базу данных GNATS[8] по электронной почте, посредством утилиты send-pr(1) или через Web-интерфейс, доступный по адресу http://www.FreeBSD.org/send-pr.html. Кроме множества различных технических списков рассылки о FreeBSD, по адресу Список рассылки, посвящённый контролю качества FreeBSD можно найти форум для обсуждения улучшений в ''процессе выпуска релизов''.

Для удовлетворения наших самых консервативно настроенных пользователей, начиная с FreeBSD 4.3, появились ветки для отдельных релизов. Эти ветки создаются вскоре после того, как выпускается окончательный релиз. После его выхода в ветку релиза помещаются только самые критичные исправления и добавления, касающиеся безопасности. Кроме обновлений исходных текстов посредством CVS, для систем веток RELENG_`X`_`Y` имеются и бинарные наборы патчей.

## 1.1. Что обсуждается в данном документе?

В последующих главах этой статьи обсуждаются:

Разд. 2

  Различные этапы процесса подготовки релиза вплоть до построения актуальной системы.

Разд. 3

  Процесс сборки.

Разд. 5

  Как базовый релиз может быть расширен третьими сторонами.

Разд. 6

  Некоторые из уроков, полученных при выпуске релиза FreeBSD 4.4.

Разд. 7

  Направления будущих работ.

|  | След.
|  | Процесс выпуска релиза

Этот, и другие документы, могут быть скачаны с ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

По вопросам, связанным с FreeBSD, прочитайте документацию прежде чем писать в <questions@FreeBSD.org>.
По вопросам, связанным с этой документацией, пишите <doc@FreeBSD.org>.
По вопросам, связанным с русским переводом документации, пишите в рассылку <frdp@FreeBSD.org.ua>.
Информация по подписке на эту рассылку находится на сайте проекта перевода.