Git 2.36 qhov chaw tswj kev tso tawm

Tom qab peb lub hlis ntawm kev txhim kho, qhov kev faib khoom tswj hwm Git 2.36 tau tso tawm. Git yog ib qho ntawm cov neeg nyiam tshaj plaws, txhim khu kev qha thiab kev ua tau zoo ntawm kev tswj hwm kev tswj hwm, muab cov cuab yeej hloov kho uas tsis yog-linear txhim kho raws li cov ceg thiab kev sib koom ua ke. Txhawm rau kom muaj kev ncaj ncees ntawm keeb kwm thiab kev tiv thaiv rau cov kev hloov pauv rov qab, kev cuam tshuam ntawm tag nrho cov keeb kwm yav dhau los yog siv hauv txhua qhov kev cog lus; nws tseem muaj peev xwm lees paub cov cim npe ntawm tus kheej thiab cog lus nrog cov kos npe digital ntawm cov tsim tawm.

Piv nrog rau qhov kev tso tawm dhau los, 717 qhov kev hloov pauv tau raug coj mus rau hauv qhov tshiab, npaj nrog kev koom tes ntawm 96 tus tsim tawm, ntawm 26 tau koom nrog kev txhim kho thawj zaug. Main innovations:

  • Cov "git log" thiab "git show" cov lus txib tam sim no muaj "-remerge-diff" kev xaiv uas tso cai rau koj los qhia qhov sib txawv ntawm tag nrho cov txiaj ntsig ntawm kev sib koom ua ke thiab cov ntaub ntawv tiag tiag tshwm sim hauv kev cog lus tom qab ua tiav "merge" hais kom ua. , uas tso cai rau koj kom meej meej soj ntsuam cov kev hloov pauv uas ua rau kev daws teeb meem kev sib koom ua ke. Cov lus txib "git show" ib txwm ua rau cov kev daws teeb meem sib txawv, ua rau kev hloov nyuaj rau kev nkag siab. Piv txwv li, nyob rau hauv lub screenshot hauv qab kab "+/-" yam tsis muaj indentation qhia qhov kawg ntawm kev tsis sib haum xeeb cuam tshuam nrog kev hloov npe ntawm sha1 rau oid hauv cov lus hauv thawj ceg, thiab "+/-" nrog indentation qhia thawj zaug. kev daws teeb meem ntawm qhov tsis sib haum xeeb tshwm sim los ntawm qhov tshwm sim ntawm qhov kev sib cav ntxiv hauv ceg thib ob hauv dwim_ref() muaj nuj nqi.
    Git 2.36 qhov chaw tswj kev tso tawm

    Thaum siv qhov kev xaiv "--remerge-diff", qhov sib txawv ntawm qhov kev daws teeb meem tsis sib haum xeeb tsis sib cais rau txhua tus niam txiv, tab sis tag nrho qhov sib txawv ntawm cov ntaub ntawv uas muaj kev sib koom ua ke tsis sib haum xeeb thiab cov ntaub ntawv uas muaj teeb meem daws teeb meem tau pom.

    Git 2.36 qhov chaw tswj kev tso tawm

  • Ua kom yooj yim dua hauv kev teeb tsa tus cwj pwm ntawm flushing disk caches ntawm kev hu mus rau fsync() muaj nuj nqi. Yav dhau los muaj core.fsyncObjectFiles parameter tau muab faib ua ob qhov sib txawv, core.fsync thiab core.fsyncMethod, muab lub peev xwm los thov fsync tsis yog rau cov ntaub ntawv (.git/objects), tab sis kuj rau lwm cov qauv git, xws li txuas (.git /refs), reflog thiab ntim cov ntaub ntawv.

    Siv cov core.fsync sib txawv, koj tuaj yeem teev cov npe ntawm cov qauv Git sab hauv uas fsync yuav raug hu ua tom qab sau ntawv ua haujlwm. Lub core.fsyncMethod kuj sib txawv tso cai rau koj xaiv ib txoj hauv kev rau tshem tawm cov cache, piv txwv li, koj tuaj yeem xaiv fsync los siv lub kaw lus hu ntawm tib lub npe, lossis hais kom sau tawm-tsuas yog siv pagecache writeback.

  • Txhawm rau tiv thaiv qhov tsis zoo uas tswj hwm lwm tus neeg siv hloov pauv ntawm .git cov npe rau hauv cov ntu sib koom, kev txheeb xyuas tus tswv tsev khaws cia tau ntxiv dag zog. Kev ua txhua yam git cov lus txib tam sim no tsuas yog tso cai hauv lawv tus kheej ".git" cov npe. Yog tias daim ntawv teev npe nrog lub chaw khaws cia yog rau lwm tus neeg siv, ces qhov yuam kev yuav tshwm sim los ntawm lub neej ntawd. Tus cwj pwm no tuaj yeem raug cuam tshuam los ntawm kev teeb tsa safe.directory.
  • Qhov "git cat-file" hais kom ua, npaj rau kev tso tawm cov ntsiab lus ntawm Git cov khoom, tau ntxiv nrog "--batch-command" kev xaiv, uas ntxiv rau yav dhau los muaj "--batch" thiab "--batch-check ” cov lus txib nrog lub peev xwm los hloov pauv hom kev tso zis siv "cov ntsiab lus <khoom>" los tso saib cov ntsiab lus lossis "info <object>" los tso saib cov ntaub ntawv hais txog cov khoom. Tsis tas li ntawd, qhov "flush" hais kom ua tau txhawb kom yaug cov zis tsis tawm.
  • Rau "git ls-ntoo" hais kom ua, npaj rau tsim cov npe ntawm cov ntsiab lus ntawm cov khoom ntoo, qhov "-oid-tsuas" ("-object-only") kev xaiv tau ntxiv, zoo ib yam li "-npe-tsuas yog ”, tso saib tsuas yog cov khoom txheeb xyuas kom yooj yim hu los ntawm cov ntawv sau. Qhov kev xaiv "--format" kuj tseem siv tau, tso cai rau koj los txhais koj tus kheej cov ntawv tso zis los ntawm kev sib txuas cov ntaub ntawv hais txog hom, hom, npe thiab loj.
  • Cov lus txib "git bisect khiav" siv qhov kev tshawb pom ntawm kev tsis teeb tsa cov ntaub ntawv ua tiav rau ib tsab ntawv thiab nyob rau hauv rooj plaub no qhia txog cov lej 126 lossis 127 yuam kev (yav dhau los, yog tias tsab ntawv tsis tuaj yeem khiav, txhua qhov kev hloov kho tau raug cim tias muaj teeb meem) .
  • Ntxiv qhov kev xaiv --refetch rau "git fetch" cov lus txib kom nqa tag nrho cov khoom yam tsis tau qhia rau lwm tus txog cov ntsiab lus uas twb muaj lawm hauv qhov system. Qhov kev coj cwj pwm no tuaj yeem muaj txiaj ntsig zoo rau kev rov qab los ntawm kev ua tsis tiav thaum kev ncaj ncees ntawm cov ntaub ntawv hauv zos tsis paub meej.
  • Cov "git hloov tshiab-index", "git checkout-index", "git nyeem-ntoo" thiab "git huv" cov lus txib tam sim no txhawb nqa ib nrab indexes los txhim kho kev ua tau zoo thiab txuag chaw hauv cov chaw khaws cia uas ua haujlwm ua haujlwm ib nrab. cloning (sparse-checkout ).
  • Tus cwj pwm ntawm "git clone -filter = ... -recurse-submodules" cov lus txib tau hloov pauv, uas tam sim no ua rau qee qhov cloning ntawm submodules (yav dhau los, thaum ua raws li cov lus txib, cov lim tau siv rau cov ntsiab lus tseem ceeb, thiab submodules tau cloned kiag li tsis noj rau hauv tus account lub lim).
  • Cov lus txib "git bundle" tau ntxiv kev txhawb nqa rau kev qhia cov ntxaij lim dej rau xaiv qhov tso cov ntsiab lus, zoo ib yam li kev ua haujlwm cloning ib nrab.
  • Ntxiv "--recurse-submodules" kev xaiv rau "git ceg" hais kom ua rau traverse submodules recursively.
  • Userdiff muaj ib tug tshiab handler rau cov lus Kotlin.

Tau qhov twg los: opennet.ru

Ntxiv ib saib