| ||
$FreeBSD$
В этой статье описывается подход, который используется группой подготовки релизов FreeBSD для создания качественных версий Операционной Системы FreeBSD. В ней детально описывается методология, используемая для официальных релизов FreeBSD и рассказывается об инструментах, доступных тем, кто интересуется созданием модифицированных релизов FreeBSD для тиражирования внутри организации или в коммерческих целях.
Разработка FreeBSD представляет собой весьма открытый процесс. FreeBSD составляется в результате общих усилий тысяч людей по всему миру. Проект FreeBSD предоставляет анонимный публичный доступ по протоколу CVS[1], так что любой может получить доступ к журналу изменений, разницам (патчам) между ветками разработки и другим продвинутым возможностям, которые даёт строгое управление исходным кодом. Это сильно помогает в привлечении к FreeBSD всё большего количества талантливых разработчиков. Однако, и я думаю, что все со мной согласятся, наступит хаос, если доступ по записи будет открыт всем в Internet. Поэтому только ``избранная'' группа примерно из 300 человек имеет доступ по записи в CVS-хранилище. Эти коммиттеры[6] отвечают в целом за разработку FreeBSD. Выбираемая из самых заслуженных разработчиков группа правления[7] обеспечивает некоторый уровень управления проектом.
Темп разработок, ведущихся во FreeBSD, оставляет мало времени на тщательную доводку системы до качества продуктивного релиза. Для решения этой проблемы разработка ведётся в два параллельных потока. Основной веткой разработки является HEAD, она же основная линия нашего дерева CVS, известная также под именем ``FreeBSD-CURRENT'' или, для краткости, ``-CURRENT''.
Поддерживается и более стабильная ветка, известная как ``FreeBSD-STABLE'' или, для краткости, ``-STABLE''. Обе ветки находятся в основном CVS-хранилище в Калифорнии и реплицируются при помощи CVSup[2] на зеркала по всему миру. FreeBSD-CURRENT[8] является ``передним краем'' работ над FreeBSD, через который попадают все изменения в системе. FreeBSD-STABLE является веткой разработки, из которой создаются основные релизы. В эту ветку изменения попадают разными путями, и предполагается, что сначала они попали в FreeBSD-CURRENT, где были тщательно протестированы сообществом наших пользователей.
В промежутке между релизами машинами Проекта FreeBSD, выделенными для построения системы, каждую ночь автоматически собираются снэпшоты, которые доступны для сгрузки по адресу ftp://stable.FreeBSD.org/. Общедоступность снэпшотов бинарных релизов, а также желание сообщества наших пользователей отслеживать работу над -STABLE при помощи CVSup и ``make world''[8] помогает поддержать весьма хорошее качество FreeBSD-STABLE, даже до выполнения мероприятий проверки качества, предваряющих выпуск основных релизов.
В процессе выпуска релиза пользователи постоянно присылают сообщения об ошибках и пожелания по расширению функциональности. Сообщения о проблемах попадают в наду базу данных GNATS[9] по электронной почте, посредством утилиты send-pr(1) или через Web-интерфейс, доступный по адресу http://www.FreeBSD.org/send-pr.html. Кроме множества различных технических списков рассылки о FreeBSD, по адресу Список рассылки, посвящённый контролю качества FreeBSD можно найти форум для обсуждения улучшений в ``процессе выпуска релизов''.
Для удовлетворения наших самых консервативно настроенных пользователей, начиная с FreeBSD 4.3, появились ветки для отдельных релизов. Эти ветки создаются вскоре после того, как выпускается окончательный релиз. После его выхода в ветку релиза помещаются только самые критичные исправления и добавления, касающиеся безопасности. Кроме обновлений исходных текстов посредством CVS, для систем веток RELENG_X_Y имеются и бинарные наборы патчей.
В Section 2 обсуждаются различные этапы процесса подготовки релиза вплоть до построения актуальной системы, а Section 3 описывает сам процесс сборки. Section 5 описывает, как базовый релиз может быть расширен третьими сторонами, а Section 6 проясняет некоторые из уроков, полученных при выпуске релиза FreeBSD 4.4. Наконец, в Section 7 описывается будущие направления работ.
Next | ||
Процесс выпуска релиза |
Этот, и другие документы, могут быть скачаны с ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.
По вопросам связанными с FreeBSD, прочитайте документацию прежде чем писать в <questions@FreeBSD.org>.
По вопросам связанным с этой документацией, пишите <doc@FreeBSD.org>.
По вопросам связанным с русским переводом документации, пишите <frdp@FreeBSD.org.ua>.
Закладки на сайте Проследить за страницей |
Created 1996-2024 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |