Byla zveřejněna první verze projektu elfshaker, který vyvíjí optimalizovaný systém správy verzí pro binární soubory, zaměřený na sledování změn ve spustitelných souborech ve formátu ELF. Systém uchovává binární opravy mezi soubory, umožňuje extrakci potřebné verze podle klíče, což výrazně urychluje operaci „git bisect“ a značně snižuje velikost potřebného diskového prostoru. Kód projektu je distribuován pod licencí Apache-2.0.
Program se vyznačuje vysokou účinností ukládání binárních změn ve velkém počtu podobných binárních souborů, například získaných během inkrementálních překladů jednoho projektu. Zejména výsledky dvou tisíc překladů kompilátoru Clang (každý překlad odráží změnu po každém commitu) mohou být uloženy v jednom pack souboru o velikosti 100 MB, což je 4000krát méně, než by bylo potřeba při samostatném ukládání.
Extrahování jakéhokoli stavu z tohoto souboru trvá 2-4 sekundy (60krát rychleji než operace „git bisect“ nad kódem LLVM), což umožňuje rychle získat potřebnou verzi spustitelných souborů projektu bez překladání z původních textů nebo uchovávání kopie každé verze dříve sestaveného spustitelného souboru.
Zdroj: opennet.ru
