Proyek elfshaker sedang mengembangkan sistem kontrol versi untuk file ELF.

Rilis pertama proyek elfshaker, sistem kontrol versi biner yang dioptimalkan untuk melacak perubahan pada executable ELF, telah diterbitkan. Sistem menyimpan patch biner antar file, memungkinkan Anda mengambil versi yang diinginkan dengan kunci, yang secara signifikan mempercepat operasi "git bisect" dan sangat mengurangi jumlah ruang disk yang digunakan. Kode proyek didistribusikan di bawah lisensi Apache-2.0.

Program ini terkenal karena efisiensinya yang tinggi dalam menyimpan perubahan biner dalam sejumlah besar file biner serupa, misalnya, yang diperoleh selama pembangunan tambahan satu proyek. Secara khusus, hasil dari dua ribu pembangunan kembali kompiler Clang (setiap pembangunan kembali mencerminkan perubahan setelah setiap penerapan) dapat disimpan dalam satu file paket berukuran 100 MB, yang 4000 kali lebih kecil dari yang diperlukan jika disimpan secara terpisah. .

Mengekstrak status apa pun dari file tertentu membutuhkan waktu 2-4 detik (60 kali lebih cepat daripada git membagi dua kode LLVM), memungkinkan Anda dengan cepat mengekstrak versi executable proyek yang diinginkan tanpa membuat ulang dari sumber atau menyimpan salinan setiap versi yang dibuat sebelumnya dapat dieksekusi.

Sumber: opennet.ru

Tambah komentar