Zhvilluesit e projektit OpenBSD publikuan versionin e sistemës së menaxhimit të versioneve Got 0.80 (Game of Trees), e cila thekson thjeshtësinë e strukturës dhe përdorimit. Për ruajtjen e të dhënave të versionuara, Got përdor një depo, që është e përputhshme me formatin e disqeve të repozitoreve Git, duke lejuar punën me repozitorin nëpërmjet mjeteve të Got dhe Git. Për shembull, me Git, mund të kryhen detyra që nuk janë realizuar në Got. Kodi shpërndahet nën licencën e lirë ISC.
Projekti ka si objektiv kryesor mbështetje për zhvillimin e OpenBSD në përputhje me specifikën e projektit. Ndër të tjera, në Got përdoren rregullat e sigurisë të pranuara në OpenBSD (për shembull, ndarja e privilegjeve dhe përdorimi i thirrjeve pledge dhe unveil) si dhe stili i shkrimit të kodit. Mjeti është i dizajnuar për procesin e zhvillimit me një depo të përqendruar dhe degë lokale për zhvilluesit, qasje të jashtme përmes SSH dhe rishikimin e ndryshimeve përmes emailit.
Për menaxhimin e versioneve ofrohet utilitari got me një grup komandash të njohura. Për ta lehtësuar punën, utilitari mbështet vetëm grupin minimal të komandave dhe opsioneve, të mjaftueshme për kryerjen e operacioneve themelore pa komplikime të panevojshme. Për operacione më të avancuara, sugjerohet të përdoret git-i i zakonshëm. Operacionet e menaxhimit të depozitës janë transferuar në një utilitar të veçantë gotadmin, i cili kryen detyra të tilla si inicializimi i depozitës, paketimi i indekseve dhe pastrimi i të dhënave. Për navigimin në të dhëna në depo, ofrohet interfaci web gotwebd dhe utilitari tog për shikimin interaktiv të përmbajtjes së depozitës nga linja e komandës.
Ndër ndryshimet e vendosura:
- Në procesin e serverit gotd, i cili siguron akses rrjetor në repozitor, është implementuar mundësia për të shtuar rregulla për autorizimin e operacioneve të shkrimit dhe leximit lidhur me repozitorë të veçantë.
- Në gotd janë shtuar procese të reja "listen" dhe "session" për të monitoruar kërkesat në unix-socket dhe për të trajtuar seancat. Operacionet e autentifikimit gjithashtu janë transferuar në një proces të fëmijës të veçantë.
- Izolimi i procesit në prapavijë gotd është ndryshuar nga chroot në përdorimin e thirrjes sistematike unveil. Kufizimi për lidhjen me gotd vetëm për përdoruesit e grupit gotsh është hequr.
- Në gotd është implementuar kufizimi i numrit të lidhjeve lidhur me uid.
- NĂ« gotd.conf janĂ« shtuar cilĂ«sime pĂ«r menaxhimin e lidhjeve, dhe parametri unix_socketâ Ă«shtĂ« zĂ«vendĂ«suar me âlisten onâ.
- Informacioni qĂ« tregohet gjatĂ« aktivizimit tĂ« âgotctl infoâ tani ofrohet vetĂ«m pĂ«rdoruesit root.
- Zhvillimi i CGI-wrapper mbi got â gotweb Ă«shtĂ« ndalur, dhe nĂ« vend tĂ« tij, pĂ«r ndĂ«rfaqen web duhet tĂ« pĂ«rdoret implementimi FastCGI i gotwebd, i cili ka zgjeruar ndjeshĂ«m funksionalitetet. PĂ«r shembull, nĂ« gotwebd Ă«shtĂ« shtuar njĂ« sistem modelimi pĂ«r tĂ« lehtĂ«suar ndryshimin e pamjes sĂ« faqeve, Ă«shtĂ« shtuar njĂ« kanali RSS pĂ«r ndjekjen e etiketave, dhe Ă«shtĂ« pĂ«rmirĂ«suar shfaqja e blob-Ă«ve dhe listave tĂ« commit-eve.
- Në komandat got log, got diff dhe tog diff është implementuar mbështetje për daljen në formatin diffstat.
- ĂshtĂ« reduktuar konsumimi i memories pĂ«rmes kufizimit tĂ« numrit tĂ« etiketimeve qĂ« ruhen nĂ« cache-in e objekteve.
- Në got patch është implementuar heqja e skedarëve binarë.
Burimi: opennet.ru
