Három hónapos fejlesztés után megjelent a Git 2.40-es verziója, a forráskódok elosztott kezelőrendszere. A Git az egyik legnépszerűbb, megbízható és nagy teljesítményű verziókezelő rendszer, amely rugalmas eszközöket biztosít a nem lineáris fejlesztéshez, amelyek a branch-ek elágazásán és összevonásán alapulnak. A történet integritásának biztosítása és a visszamenőleges módosításokkal szembeni ellenállás érdekében a commit-okban implicit hashinget használnak az összes korábbi történelemre, valamint lehetőség van a fejlesztők digitális aláírásaival egyes címkék és commit-ok hitelesítésére.
A korábbi verzióhoz képest az új verzióba 472 módosítást fogadtak el, amelyet 88 fejlesztő készített, közülük 30-an vettek részt először a fejlesztésben. Főbb újítások:
- A git-jump scriptbe támogatást kapott az Emacs szerkesztő, a korábban támogatott Vim mellett. A git-jump a szerkesztő számára információt ad át a fájl pozícióiról a gyors navigálás és a kód szerkesztéséhez való átugrás érdekében adott helyen. Például a git-jump használható a szerkesztőben a merge konfliktusokból származó sorok közötti váltásra, a különbségek értékelésére és a keresés végrehajtására (például végrehajtható a „git jump grep foo” és ezután gyorsan válthat a „foo” maszkot tartalmazó pozíciók között).
- A 'git cat-file' parancsba bevezették az '-s' és a '--batch-check' opciók együttes használatának támogatását a '--use-mailmap'-al, hogy helyesen meghatározza az objektum méretét az email címekhez tartozó azonosítók cseréje alapján, amelyet a mailmap fájlban adtak meg (korábban a '--use-mailmap' opció csak a tartalom kimenetére volt hatással, de nem vette figyelembe, hogy a régi és cserélt név/email párok különböző mérettel bírhatnak).
- A 'git check-attr' parancshoz hozzáadták a '--source' opciót, amely lehetővé teszi a megfelelő '.gitattributes' fájl kiválasztását, amely az aktuális attribútumok meghatározására fog szolgálni, amennyiben a repository-ban több '.gitattributes' fájl is található.
- A 'git bisect' parancs megvalósítását C nyelven újraírták és beépítették a git alapvégrehajtó fájljába (korábban a parancs Shell-scripten keresztül volt megvalósítva).
- Eltávolítva a régi "git add --interactive" parancs Shell-en írt változata (a git 2.26-ban egy beépített C változat került javaslatra, de a régi Shell változat továbbra is elérhető maradt, és az add.interactive.useBuiltin beállítás vezérelte).
- A "git merge-tree" parancshoz hozzáadva az ‘--merge-base’ opció.
- A "git range-diff" parancshoz hozzáadva az ‘--abbrev=’ opció.
- Bevezetésre került a rebase parancs interaktív módjához tartozó lista szerkesztő felülírásának lehetősége a GIT_SEQUENCE_EDITOR változó beállításával a "git var" parancs segítségével, hasonlóan a "git var GIT_EDITOR" parancshoz.
- A felhasználói fiókok alrendszeréhez hozzáadva a lejárati dátummal rendelkező jelszavak támogatása.
- A Bash automatikus kiegészítési szkriptekben megvalósítva a kis- és nagybetűkre érzéketlen üzemmód.
Forrás: opennet.ru
