Elfshaker projekts izstrādā ELF failu versiju kontroles sistēmu.

Ir publicēts pirmais elfshaker projekta laidiens, binārā versiju kontroles sistēma, kas optimizēta ELF izpildāmo failu izmaiņu izsekošanai. Sistēma saglabā bināros ielāpus starp failiem, ļauj izgūt vēlamo versiju pēc atslēgas, kas ievērojami paātrina “git bisect” darbību un ievērojami samazina izmantotās diska vietas daudzumu. Projekta kods tiek izplatīts saskaņā ar Apache-2.0 licenci.

Programma ir ievērojama ar savu augsto bināro izmaiņu glabāšanas efektivitāti daudzos līdzīgos bināros failos, piemēram, kas iegūti viena projekta pakāpeniskas būves laikā. Jo īpaši Clang kompilatora divu tūkstošu pārbūvju rezultātus (katra pārbūve atspoguļo izmaiņas pēc katras commit) var saglabāt vienā pakotnes failā ar 100 MB lielumu, kas ir 4000 reižu mazāks nekā tas, kas būtu nepieciešams, ja to uzglabātu atsevišķi. .

Jebkura stāvokļa izvilkšana no dotā faila aizņem 2–4 sekundes (60 reizes ātrāk nekā git, kas sadala LLVM kodu), ļaujot ātri izvilkt vēlamo projekta izpildāmo failu versiju, nepārbūvējot no avota vai nesaglabājot katras iepriekš izveidotas versijas kopiju. izpildāms.

Avots: opennet.ru

Pievieno komentāru