Dla OpenBSD rozwija się nowy system kontroli wersji zgodny z git o nazwie Got

Stefan Sperling (stsp@), uczestnik projektu OpenBSD z dziesięcioletnim doświadczeniem, a także jeden z głównych deweloperów Apache Subversion, opracowuje nowy system kontroli wersji „Game of Trees” (got). Przy tworzeniu nowego systemu priorytetem jest prostota struktury i łatwość użytkowania, a nie elastyczność. Obecnie Got jest jeszcze w fazie rozwoju; jest rozwijany wyłącznie na OpenBSD, a jego docelową grupą są deweloperzy OpenBSD. Kod jest dystrybuowany na licencji ISC (odpowiednik uproszczonej licencji BSD i MIT).

W celu przechowywania wersjonowanych danych w Got wykorzystuje się repozytoria git. Obecnie wspierane są tylko lokalne operacje zarządzania wersjami. Przy tym git może być używany do wszelkiej funkcjonalności, która jeszcze nie została wdrożona w got — zawsze będzie możliwe działanie z got i git w jednym repozytorium.

Głównym aktualnym celem projektu jest interakcja z deweloperami OpenBSD, którzy chcą regularnie korzystać z got w swojej pracy nad OpenBSD oraz ulepszanie operacji zarządzania wersjami na podstawie ich opinii.

Główne zasady projektu:

  • Przestrzeganie zasad bezpieczeństwa i stylu kodowania OpenBSD;
  • Proces rozwoju oparty na przeglądach kodu przez e-mail;
  • Użycie pledge(2) i unveil(2) w całej bazie kodu;
  • Użycie podziału uprawnień przy parsowaniu danych repozytoriów przez sieć lub z dysku;
  • Wsparcie dla bazy kodu na licencji BSD.

Cele długoterminowe:

  • Zachowanie kompatybilności z formatem dyskowym repozytoriów git (bez zapewnienia kompatybilności z narzędziami);
  • Zapewnienie pełnego zestawu narzędzi do zarządzania wersjami dla OpenBSD:
    • Intuicyjny interfejs wiersza poleceń do wykonywania niezbędnych operacji zarządzania wersjami (got)
    • Interaktywny przeglądarka repozytoriów do analizy historii i przeglądu zablokowanych zmian (tog)
    • Skrypt CGI, realizujący interfejs webowy — przeglądarka repozytoriów
    • Narzędzia administracyjne repozytoriów z dużym naciskiem na tworzenie kopii zapasowych i przywracanie
    • Serwer repozytoriów do hostowania centralnego repozytorium i synchronizacji zmian z kaskadą publicznych i prywatnych luster
  • Wymagania dotyczące workflow deweloperów OpenBSD:
    • Silne wbudowane wsparcie dla scentralizowanego modelu repozytoriów;
    • Dla programistów, którzy nie potrzebują gałęzi, zachowuje się prostotę obsługi;
    • Wsparcie lokalnych gałęzi dla programistów, którzy z nich korzystają;
    • Wsparcie gałęzi stabilnych „-stable”;
    • Inne funkcje niezbędne do budowy infrastruktury projektu OpenBSD.
  • Implementacja uwierzytelnionych i szyfrowanych połączeń sieciowych:
    • Dostęp do repozytoriów przez SSH oraz dodatkowo TLS do klonowania repozytoriów i pobierania zmian;
    • Dostęp do repozytoriów tylko przez SSH do wprowadzania zmian;
    • Dostęp do repozytoriów nie jest możliwy przez nieszyfrowane połączenia.

    Got już dodano do drzewa portów jako „devel/got„. Na EUROBSDCON 2019 zostanie zaprezentowane referat o nowym systemie kontroli wersji.

    Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster