Ang proyekto sa elfshaker nagpalambo sa usa ka sistema sa pagkontrol sa bersyon alang sa mga file sa ELF

Ang una nga pagpagawas sa proyekto sa elfshaker, usa ka sistema sa pagkontrol sa binary nga bersyon nga gi-optimize alang sa pagsubay sa mga pagbag-o sa mga executable sa ELF, gipatik. Ang sistema nagtipig sa binary patches tali sa mga file, nagtugot kanimo sa pagkuha sa gitinguha nga bersyon pinaagi sa yawe, nga makapadali sa "git bisect" nga operasyon ug makapakunhod pag-ayo sa gidaghanon sa disk space nga gigamit. Ang code sa proyekto giapod-apod ubos sa lisensya sa Apache-2.0.

Nailhan ang programa tungod sa taas nga kahusayan niini sa pagtipig sa binary nga mga pagbag-o sa daghang gidaghanon sa parehas nga binary nga mga file, pananglitan, nakuha sa panahon sa pagdugang nga pagtukod sa usa ka proyekto. Sa partikular, ang mga resulta sa duha ka libo nga pagtukod pag-usab sa Clang compiler (ang matag pagtukod pag-usab nagpakita sa kausaban human sa matag commit) mahimong tipigan sa usa ka pack file nga 100 MB ang gidak-on, nga 4000 ka beses nga mas gamay kay sa gikinahanglan kon gilain nga gitipigan. .

Ang pagkuha sa bisan unsang estado gikan sa usa ka gihatag nga file nagkinahanglan og 2-4 segundos (60 ka beses nga mas paspas kay sa git bisecting LLVM code), nga nagtugot kanimo nga dali nga makuha ang gitinguha nga bersyon sa mga executable sa usa ka proyekto nga dili magtukod pag-usab gikan sa tinubdan o magtipig og kopya sa matag bersyon sa usa ka kanhi gitukod. mapatuman.

Source: opennet.ru

Idugang sa usa ka comment