Release van git-compatibel versiebeheersysteem Got 0.80

De ontwikkelaars van het OpenBSD-project hebben de release gepubliceerd van het versiecontrolesysteem Got 0.80 (Game of Trees), waarvan de ontwikkeling zich richt op ontwerp- en gebruiksgemak. Om versiegegevens op te slaan, gebruikt Got opslag die compatibel is met het schijfformaat van Git-repository's, waardoor je met de repository kunt werken met behulp van de Got- en Git-tools. Je kunt Git bijvoorbeeld gebruiken om werk te doen dat niet in Got is geïmplementeerd. De code wordt verspreid onder de gratis ISC-licentie.

Het hoofddoel van het project is het ondersteunen van de ontwikkeling van OpenBSD met het oog op de specifieke kenmerken van het project. Got gebruikt onder andere OpenBSD-beveiligingsregels (zoals scheiding van privileges en het gebruik van belofte- en onthullingsaanroepen) en codeerstijl. De toolkit is ontworpen voor het ontwikkelingsproces met een gemeenschappelijke gecentraliseerde repository en lokale vestigingen voor ontwikkelaars, externe toegang via SSH en beoordeling van wijzigingen via e-mail.

Voor versiebeheer wordt het hulpprogramma got aangeboden met de gebruikelijke reeks opdrachten. Om het werk te vereenvoudigen ondersteunt het hulpprogramma alleen de minimaal vereiste reeks opdrachten en opties, voldoende om basisbewerkingen uit te voeren zonder onnodige complicaties. Voor geavanceerde bewerkingen wordt voorgesteld om gewone git te gebruiken. Beheerbewerkingen voor repository's worden verplaatst naar een apart hulpprogramma gotadmin, dat taken uitvoert als het initialiseren van de repository, het inpakken van indexen en het opschonen van gegevens. Om door de gegevens in de repository te navigeren, worden de gotwebd-webinterface en het tog-hulpprogramma aangeboden voor interactieve weergave van de inhoud van de repository vanaf de opdrachtregel.

Onder de toegevoegde wijzigingen:

  • Het gotd-serverproces, dat netwerktoegang tot de repository biedt, heeft de mogelijkheid om regels toe te voegen om schrijf- en leesbewerkingen met betrekking tot individuele repository's te autoriseren.
  • gotd heeft nieuwe "luister"- en "sessie"-processen toegevoegd om Unix-socket-oproepen te monitoren en sessies af te handelen. Authenticatiebewerkingen worden ook in een afzonderlijk kindproces geplaatst.
  • Gotd-achtergrondprocesisolatie is verplaatst van chroot naar het gebruik van de reveal-systeemaanroep. De beperking op het verbinden met gotd is alleen verwijderd voor gebruikers uit de gotsh-groep.
  • gotd implementeert een limiet op het aantal verbindingen op basis van uid.
  • Instellingen voor verbindingsbeheer toegevoegd aan gotd.conf, en de unix_socket parameter gewijzigd in 'luisteren op'.
  • Toegang tot de informatie die wordt weergegeven bij het uitvoeren van 'gotctl info' is nu beperkt tot alleen de rootgebruiker.
  • De ontwikkeling van de CGI-wrapper voor got - gotweb - is stopgezet, in plaats daarvan zou de FastCGI-implementatie van gotwebd, waarvan de mogelijkheden aanzienlijk zijn uitgebreid, moeten worden gebruikt voor de webinterface. Gotwebd heeft bijvoorbeeld een sjabloonengine toegevoegd om het gemakkelijker te maken het ontwerp van pagina's te wijzigen, een RSS-feed toegevoegd voor het volgen van tags en de weergave van blobs en lijsten met commits verbeterd.
  • De opdrachten got log, got diff en tog diff ondersteunen nu diffstat-uitvoer.
  • Het geheugengebruik is verminderd door het aantal tags dat in de objectcache is opgeslagen te beperken.
  • De gekregen patch implementeert het verwijderen van binaire bestanden.

Bron: opennet.ru

Voeg een reactie