Pas tre muaj zhvillimi, u publikua versioni 2.40 i sistemit të shpërndarë të menaxhimit të kodit burimor Git. Git është një nga sistemet më të njohura, të besueshme dhe me performancë të lartë për menaxhimin e versioneve, duke ofruar mjete fleksibël për zhvillimin jo linear, të bazuara në degëzime dhe bashkime. Për të siguruar integritetin e historisë dhe qëndrueshmërinë ndaj ndryshimeve "me anë të pasardhësve", përdoret hashimi i paqartë i tërë historisë së mëparshme në çdo commit, gjithashtu është e mundur vërtetimi me nënshkrime digjitale të zhvilluesve për etiketat dhe commit-et individuale.
Në krahasim me versionin e kaluar, në këtë version janë përfshirë 472 ndryshime, të përgatitura me pjesëmarrjen e 88 zhvilluesve, nga të cilët 30 morën pjesë për herë të parë në zhvillim. Risitë kryesore janë:
- Në skriptin git-jump është shtuar mbështetje për redaktorin Emacs, përveç redaktorit Vim, që ishte mbështetur më parë. Git-jump përdoret për të dërguar në redaktorin e tekstit informacionin mbi pozitat në skedar për navigim të shpejtë dhe kalim për redaktimin e kodit në një vend të caktuar. Për shembull, git-jump mund të përdoret për të kaluar mes linjave në redaktor që janë hasil i zgjidhjeve të konflikteve të bashkimit, vlerësimit të diferencave dhe kryerjes së kërkimeve (mund të kryhet "git jump grep foo" dhe pastaj të kaloni shpejt mes pozita që kanë maskën "foo").
- Në "git cat-file" është siguruar mbështetje për aplikimin e opsioneve "-s" dhe "—batch-check" së bashku me "—use-mailmap" për të përcaktuar saktësisht madhësinë e objektit, duke marrë parasysh zëvendësimin e identifikuesit, i realizuar në bazë të lidhjeve me e-mail, të caktuara në skedarin mailmap (më parë opsioni "—use-mailmap" kishte ndikim vetëm në ndjeshën e përmbajtjes, por nuk merrte parasysh se çiftet e vjetra dhe të zëvendësuara emër/e-mail mund të kenë madhësi të ndryshme).
- Në komandën "git check-attr" është shtuar opsioni "—source" për të zgjedhur pemën me skedarin e nevojshëm " .gitattributes", i cili do të përdoret për të përcaktuar atributet aktuale në kushte të ekzistencës së disa skedarëve " .gitattributes" në repositor.
- Implementimi i komandës "git bisect" është riparë në gjuhën C dhe është integruar në skedarin kryesor ekzekutues të git (më parë, komanda ishte implementuar në formën e një skripti Shell).
- U hoq implementimi i vjetër i komandës "git add —interactive", e shkruar në Shell (në git 2.26 u propozua një variant i integruar në C, por implementimi i vjetër në Shell mbeti i disponueshëm dhe i rregullohej nga konfigurimi add.interactive.useBuiltin).
- Në komandën "git merge-tree" është shtuar opsioni ‘—merge-base’.
- Në komandën "git range-diff" është shtuar opsioni "—abbrev=".
- Është shtuar mundësia për të tejkaluar redaktorin e listave për modalitetin interaktiv të komandës rebase nëpërmjet vendosjes së variablës GIT_SEQUENCE_EDITOR përmes komandës "git var" në mënyrë të ngjashme me "git var GIT_EDITOR".
- Në nën sistemin e llogarive është shtuar mbështetje për fjalëkalimet me afat të caktuar.
- Në skenarët e autokompletimeve të futjes për Bash është realizuar një mjedis pune pa marrë parasysh regjistrimin e simboleve.
Burimi: opennet.ru
