Bemutatták a Git 2.22 új verziójának megjelenését. A Git az egyik legnépszerűbb, legmegbízhatóbb és legnagyobb teljesítményű verziókövető rendszer , amely fejlesztőeszközöket is biztosít.
Az előzmények integritásának és az utólagos változással szembeni ellenálló képesség biztosítása érdekében minden elkötelezettség implicit kivonatolását használjuk minden elkötelezettségnél, és ellenőrizhetjük az egyes címkék és elkötelezettségek fejlesztői digitális aláírásait is.
Az előző verzióhoz képest 745 változtatást végeztek az új verzión, amelynek előkészítésében 74 fejlesztő vett részt, akik közül 18-an először vettek részt a fejlesztésben.
Git 2.22 legfontosabb új funkciók
A jelenleg használt helyi ág megjelenítéséhez mostantól használhatod a "git branch-show-current " parancsot.
Ezenkívül az 1.18-as verzió óta elérhető a commit halmaz új átviteli módja, a " git rebase --rebase-merges " , amely felváltotta a korábbi " --preserve-merges " opciót, amelyet mostantól elavultként jelöltek meg.
A hordozható ág struktúrájának megőrzéséhez használhatod a " --preserve-merges " opciót, amely interaktív módban ( git rebase -i --preserve-merges ) indítva lehetővé tette a commit előzmények szerkesztését, de nem garantálta a repository struktúra teljes megőrzését.
Az utód mód, a " --rebase-merges " lehetővé teszi a hordozható ág változásainak szerkezetének megőrzését, miközben interaktív műveletek teljes készletét biztosítja, beleértve a commitok törlését, átrendezését és átnevezését.
Például a „ --rebase-merges ” lehetővé teszi a véglegesítéseket egy leválasztott ágból egy újabb fő ágba, miközben megőrzi az ág szerkezetét a hordozható ágban, és néhány módosítást végez a jegyzetekben a véglegesítéshez.
A „ git rebase ” művelet egy sor commit új alap committal való lecserélésére szolgál, például egy különálló ág, ahol valamilyen új funkció fejlesztése folyamatban van, állapotának megváltoztatásához a master ág aktuális állapotára, beleértve az ág után hozzáadott javításokat is.
Fenséges háttér-támogatás
A ` git bisect` jelentés frissült, és mostantól olvashatóbb , míg a ` git mergetool` mostantól a Sublime Merge-t (` smerge` ) is támogatja backendként. A Git meghívja az új ` post-index-change` hook-ot , amikor a tárolt indexfájl megváltozik, ami segít a virtualizált munkafákban.
Továbbá a „ git difftoo l” mostantól a tárhelyen kívül is fut, és megszakítja a „ git checkout -m <other> ” parancsot, ha különbséget észlel a HEAD és az index között.
Mivel az index bepakolása néha hosszú időt vesz igénybe a klónozási folyamatban, a fejlesztők előrehaladási sávot adtak a folyamat során.
Ugyanakkor a ` git clone` a protokoll 2-es verzióján keresztül kommunikál az új ` switch` szerver opciónak köszönhetően . Számos funkció javítja a kódkiegészítést, és a fejlesztők a trace2 nyomkövető eszközön is dolgoztak.
Az új Trace2 követési mechanizmus rugalmasabb és strukturáltabb kimeneti formátumot kínál. A Trace2 lehetővé teszi az operatív telemetriai és teljesítményadatok gyűjtését a részletesebb elemzés és hibakeresés érdekében (a felhasználó rendeli hozzá a vezérlőt; külsőleg nem küld adatokat).
Teljesítmény és fejlődés
A Git beépített differenciális mechanizmusát átírták, és mostantól támogatja a ` git commit-tree` függvényt , a ` pack-redundant` API és a ` git multi-pack-index verify` pedig mostantól gyorsabban működik a sok csomagfájlt tartalmazó tárolókban. A fejlesztők számára a tesztelési keretrendszer is frissült.
Nemrégiben a ` git stash` függvényt implementálták C-ben a ` git rebase` függvényhez . A C implementációt frissítették , hogy megakadályozzák a Git ugyanazon fájl ismételt felülírását. A ` git diff` mostantól gyorsabban fut speciális esetekben is, amikor információkat gyűjt a blobokról. Végül, de nem utolsósorban a `git clone` felgyorsítja a csatlakozási folyamatot.
Ezenkívül hozzáadta a szűrés lehetőségét, amikor a végrehajtásokhoz csatolt kiterjesztett "git log" címkék jelennek meg.