Для OpenBSD развивается новая git-совместимая система контроля версий Got
Стефан Сперлинг (stsp@), участник проекта OpenBSD с десятилетним стажем, а также один из главных разработчиков Apache Subversion, разрабатывает новую систему контроля версий «Game of Trees» (got). При создании новой системы приоритет отдаётся простоте устройстрова и простоте использования, а не гибкости. Сейчас Got ещё находится в разработке; он разрабатывается исключительно на OpenBSD и его целевой аудиторией являются разработчики OpenBSD. Код распространяется под свободной лицензией ISC (эквивалент упрощённой лицензии BSD и MIT).
Для хранения версионированных данных в Got используются git-репозитории. В настоящее время поддерживаются только локальные операции управления версиями. При этом, git может использоваться для любой функциональности, которая ещё не реализована в got — работать с got и git в одном репозитории всегда будет возможно.
Основной текущей целью проекта называется взаимодействие с разработчиками OpenBSD, которые хотят регулярно использовать got для своей работы над OpenBSD, и улучшение операций управления версиями на основе полученной от них обратной связи.
Основные принципы проекта:
Следование правилам безопасности и стилю кодирования OpenBSD;
Процесс разработки, основанный на рецензировании кода по электронной почте;
Использование pledge (2) и unveil (2) во всей кодовой базе;
Использование разделения привилегий при парсинге данных репозитория по сети или с диска;
Поддержка кодовой базы под лицензией BSD.
Долгосрочные цели:
Сохранение совместимости с дисковым форматом репозитория git (без сохранения совместимости с инструментарием);
Предоставление полного набора инструментов управления версиями для OpenBSD:
Интуитивно понятный интерфейс командной строки для выполнения необходимых операций управления версиями (got)
Интерактивный браузер репозитория для анализа истории и обзора зафиксированных изменений (tog)
CGI-скрипт, реализующий веб-интерфейс — браузер репозитория
Инструменты администрирования репозиториев с сильным акцентом на резервное копирование и восстановление
Сервер репозитория для хостинга центрального репозитория и синхронизации изменений с каскадом публичных и частных зеркал
Требования к рабочему процессу разработчиков OpenBSD:
Сильная встроенная поддержка централизованной модели репозитория;
Для разработчиков, которым не нужны ветки (branch), сохраняется простота использования;
Поддержка локальных веток для разработчиков, которые в них нуждаются;
Поддержка релизных веток »-stable»;
Прочие функции, необходимые для построения инфраструктуры проекта OpenBSD.
Реализация аутентифицированных и шифрованных сетевых соединений:
Доступ к репозиториям по SSH и дополнительно TLS для клонирования репозитория и получения изменений;
Доступ к репозиториям только по SSH для внесения изменений;
Доступ к репозиториям невозможен через незашифрованные соединения.
Got уже добавлен в дерево портов как «devel/got». На EUROBSDCON 2019 будет представлен доклад про новую систему контроля версий.
Для хранения версионированных данных в Got используются git-репозитории. В настоящее время поддерживаются только локальные операции управления версиями. При этом, git может использоваться для любой функциональности, которая ещё не реализована в got — работать с got и git в одном репозитории всегда будет возможно.
Основной текущей целью проекта называется взаимодействие с разработчиками OpenBSD, которые хотят регулярно использовать got для своей работы над OpenBSD, и улучшение операций управления версиями на основе полученной от них обратной связи.
Основные принципы проекта:
Следование правилам безопасности и стилю кодирования OpenBSD;
Процесс разработки, основанный на рецензировании кода по электронной почте;
Использование pledge (2) и unveil (2) во всей кодовой базе;
Использование разделения привилегий при парсинге данных репозитория по сети или с диска;
Поддержка кодовой базы под лицензией BSD.
Долгосрочные цели:
Сохранение совместимости с дисковым форматом репозитория git (без сохранения совместимости с инструментарием);
Предоставление полного набора инструментов управления версиями для OpenBSD:
Интуитивно понятный интерфейс командной строки для выполнения необходимых операций управления версиями (got)
Интерактивный браузер репозитория для анализа истории и обзора зафиксированных изменений (tog)
CGI-скрипт, реализующий веб-интерфейс — браузер репозитория
Инструменты администрирования репозиториев с сильным акцентом на резервное копирование и восстановление
Сервер репозитория для хостинга центрального репозитория и синхронизации изменений с каскадом публичных и частных зеркал
Требования к рабочему процессу разработчиков OpenBSD:
Сильная встроенная поддержка централизованной модели репозитория;
Для разработчиков, которым не нужны ветки (branch), сохраняется простота использования;
Поддержка локальных веток для разработчиков, которые в них нуждаются;
Поддержка релизных веток »-stable»;
Прочие функции, необходимые для построения инфраструктуры проекта OpenBSD.
Реализация аутентифицированных и шифрованных сетевых соединений:
Доступ к репозиториям по SSH и дополнительно TLS для клонирования репозитория и получения изменений;
Доступ к репозиториям только по SSH для внесения изменений;
Доступ к репозиториям невозможен через незашифрованные соединения.
Got уже добавлен в дерево портов как «devel/got». На EUROBSDCON 2019 будет представлен доклад про новую систему контроля версий.
Ещё новости по теме:
18:20