Git 2.36 frumstýringarútgáfa

Eftir þriggja mánaða þróun hefur útgáfa dreifða frumstýringarkerfisins Git 2.36 verið birt. Git er eitt vinsælasta, áreiðanlegasta og afkastamesta útgáfustýringarkerfið sem býður upp á sveigjanleg ólínuleg þróunarverkfæri sem byggjast á greiningu og sameiningu útibúa. Til að tryggja heilleika sögunnar og mótstöðu gegn breytingum „backdating“, er óbein hashing af allri fyrri sögu í hverri skuldbindingu notuð, einnig er hægt að sannreyna einstök merki og skuldbindingar með stafrænum undirskriftum þróunaraðila.

Í samanburði við fyrri útgáfu voru 717 breytingar samþykktar í nýju útgáfunni, unnar með þátttöku 96 þróunaraðila, þar af 26 sem tóku þátt í þróuninni í fyrsta skipti. Helstu nýjungar:

  • "-remerge-diff" valkostinum hefur verið bætt við "git log" og "git show" skipanirnar, sem gerir þér kleift að sýna muninn á heildarniðurstöðu sameiningarinnar og raunverulegum gögnum sem endurspeglast í skuldbindingunni eftir að hafa unnið úr " sameina" skipunina, sem gerir þér kleift að meta sjónrænt breytingarnar sem gerðar eru í kjölfarið á að leysa úr sameiningu átaka. Venjulega „git show“ skipunin aðskilur mismunandi átakalausnir með inndrætti, sem gerir það erfitt að skilja breytingarnar. Til dæmis, á skjámyndinni hér að neðan, sýnir línan „+/-“ án inndráttar síðustu ágreiningslausn sem tengist endurnefna í fyrstu grein sha1 í oid í athugasemdinni, og „+/-“ með inndrátt sýnir upphaflega átök upplausn sem stafar af birtingu viðbótarrafræða í annarri grein í dwim_ref() fallinu.
    Git 2.36 frumstýringarútgáfa

    Þegar "--remerge-diff" valmöguleikinn er notaður er munurinn á milli ágreiningslausna ekki aðskilinn fyrir hverja yfirgrein, en heildarmunurinn á skrá sem hefur sameinað árekstra og skrá sem hefur átök leyst er sýndur.

    Git 2.36 frumstýringarútgáfa

  • Bættur sveigjanleiki við að sérsníða hegðun þess að skola diskskyndiminni í gegnum fsync() aðgerðarkallið. Fyrri færibreytunni core.fsyncObjectFiles hefur verið skipt í tvær stillingarbreytur core.fsync og core.fsyncMethod til að leyfa fsync að vera beitt ekki aðeins á hlutskrár (.git/objects) heldur einnig á aðrar git-byggingar eins og tilvísanir (.git) /refs), reflog og pakka skrár.

    Í gegnum core.fsync breytuna er hægt að tilgreina lista yfir innri Git mannvirki, eftir skrifaðgerðina verður fsync kallað til viðbótar fyrir þær. Core.fsyncMethod breytan gerir þér kleift að velja aðferð til að tæma skyndiminni, til dæmis geturðu valið fsync til að nota kerfiskallið með sama nafni, eða tilgreint eingöngu útskrift til að nota afturritun í bið (pagecache writeback).

  • Til að verjast veikleikum sem hafa áhrif á að aðrir notendur skipta út .git möppum í sameiginlega skipting, hefur staðfesting á eiganda geymslunnar verið styrkt. Að keyra allar git skipanir er nú aðeins leyfilegt í þeirra eigin ".git" möppum. Ef geymsluskráin er í eigu annars notanda mun sjálfgefið villa birtast. Hægt er að slökkva á þessari hegðun með því að nota safe.directory stillinguna.
  • Bætti --batch-command valkostinum við "git cat-file" skipunina, sem er ætluð til að sýna upprunalega innihald Git hluta, bæta við áður tiltækum "--batch" og "--batch-check" skipunum með getu til að stilla tegund úttaks með ábendingunni " innihald <hlutur>" til að sýna innihaldið, eða "upplýsingar <hlutur>" til að birta upplýsingar um hlutinn. Að auki er "skola" skipunin studd til að skola úttaksbuffið.
  • "-oid-only" ("--object-only") valmöguleikinn hefur verið bætt við "git ls-tree" skipunina, sem er ætluð til að skrá innihald hlutartrés, sem, á hliðstæðan hátt við "-- aðeins nafn", sýnir aðeins hlutauðkenni til að einfalda símtalið úr skriftum. „--snið“ valmöguleikinn hefur einnig verið útfærður, sem gerir þér kleift að skilgreina þitt eigið úttakssnið með því að sameina stillingu, gerð, nafn og stærðarupplýsingar.
  • Í "git bisect run" skipuninni er skilgreiningin á því að setja ekki merki um keyrsluskrá fyrir handritið og gefa út villur með kóða 126 eða 127 í þessu tilfelli útfærð (áður, ef ekki var hægt að keyra handritið, voru allar endurskoðanir merkt sem vandamál).
  • Bætti við "--refetch" valmöguleikanum við "git fetch" skipunina til að sækja alla hluti án þess að upplýsa hina hliðina á efninu sem þegar er á staðbundnu kerfi. Þessi hegðun getur verið gagnleg til að endurheimta ástand eftir bilanir þegar engin viss er um heilleika staðbundinna gagna.
  • Bætti við stuðningi við dreifðar vísitölur við git update-index, git checkout-index, git read-tree og git clean skipanir til að bæta afköst og spara pláss í geymslum sem framkvæma dreifðar vísitöluaðgerðir klónun (sparse-checkout).
  • Hegðun "git clone --filter=... --recurse-submodules" skipunarinnar hefur verið breytt, sem nú leiðir til klónunar undireininga að hluta (áður þegar slíkar skipanir voru framkvæmdar var sían aðeins notuð á aðalinnihaldið , og undireiningar voru klónaðar alveg án þess að taka tillit til síunnar).
  • Stuðningur við að tilgreina síur fyrir sértæka staðsetningu efnis, svipað og að hluta klónaaðgerðir, hefur verið bætt við "git bundle" skipunina.
  • Bætti við "--recurse-submodules" valmöguleikanum við "git branch" skipunina til að fara afturkvæmt yfir undireiningar.
  • Userdiff hefur lagt til nýjan meðhöndlun fyrir Kotlin tungumálið.

Heimild: opennet.ru

Bæta við athugasemd