Стефан Сперлинг (), участник проекта OpenBSD с десятилетним стажем, а также один из главных разработчиков Apache Subversion, нова система за контрол на версиите (got). При създаването на новата система приоритетът е даден на простотата на устройството и леснотата на използване, а не на гъвкавостта. В момента Got все още е в разработка; той се разработва изключително на OpenBSD и целевата аудитория са разработчиците на OpenBSD. Кодът се разпространява под свободна лицензия (еквивалент на опростената лицензия BSD и MIT).
За съхранение на версионираните данни в Got се използват git-репозитории. В момента се поддържат само локални операции за управление на версиите. Въпреки това, git може да се използва за всякаква функционалност, която още не е реализирана в got — работа с got и git в едно хранилище винаги ще бъде възможно.
Основната текуща на проекта е взаимодействието с разработчиците на OpenBSD, които желаят редовно да използват got за работата си върху OpenBSD, и подобряване на операциите за управление на версиите, основани на получената от тях обратна връзка.
Основни принципи на проекта:
- Следване на правилата за сигурност и стил на кодиране на OpenBSD;
- Процес на разработка, основан на рецензиране на кода по имейл;
- Използването () и () във цялата кодова база;
- Използване на разделяне на привилегиите при парсинг на данни в репозиторията от мрежата или от диска;
- Поддържане на кодовата база под лицензия BSD.
Дългосрочни цели:
- Запазване на съвместимостта с формат на репозитория git (без запазване на съвместимост с инструментите);
- Предоставяне на пълен набор от инструменти за управление на версиите за OpenBSD:
- Интуитивен интерфейс на командния ред за изпълнение на необходимите операции за управление на версиите ()
- Интерактивен браузър на репозитория за анализ на историята и преглед на фиксираните промени ()
- CGI-скрипт, реализиращ уеб-интерфейс — браузър на репозиториите
- Инструменти за администриране на репозитории с акцент върху резервното копиране и възстановяване
- Сървър на репозитория за хостинг на централния репозиторий и синхронизация на промените с каскад от публични и частни огледала
- Изисквания към работния процес на разработчиците на OpenBSD:
- Силна вградена поддръжка на централизирана моделна хранилище;
- За разработчици, на които не са нужни клонове, остава простотата на използването;
- Поддръжка на локални клонове за разработчици, които се нуждаят от тях;
- Поддръжка на релизни клонове «-stable»;
- Други функции, необходими за изграждане на инфраструктурата на проекта OpenBSD.
- Реализация на удостоверени и криптирани мрежови връзки:
- Достъп до хранилища по SSH и допълнително TLS за клониране на хранилището и получаване на промени;
- Достъп до хранилища само по SSH за извършване на промени;
- Достъп до хранилища не е възможен през нешифровани връзки.
Got вече в дървото на портовете като ««. На ще бъде представен за новата система за контрол на версиите.
Източник: opennet.ru
