Tso tawm qhov kev faib tawm tswj qhov system Git 2.25

Muaj tso tawm qhov faib qhov chaw tswj qhov system Git 2.25.0. Git yog ib qho ntawm cov neeg nyiam tshaj plaws, txhim khu kev qha, thiab kev ua tau zoo tshaj plaws kev tswj hwm cov tshuab uas muab cov cuab yeej hloov kho tsis yog kab tawm raws li cov ceg ntoo thiab kev sib koom ua ke. Txhawm rau kom ntseeg tau qhov kev ncaj ncees ntawm keeb kwm thiab kev tiv thaiv rau cov kev hloov pauv rov qab, cuam tshuam rau tag nrho cov keeb kwm yav dhau los hauv txhua qhov kev cog lus raug siv, nws tseem tuaj yeem txheeb xyuas cov cim npe ntawm tus kheej thiab cog lus nrog cov kos npe digital los ntawm cov tsim tawm.

Piv nrog rau qhov kev tso tawm dhau los, cov ntawv tshiab suav nrog 583 qhov kev hloov pauv, npaj nrog kev koom tes ntawm 84 tus tsim tawm, ntawm 32 tau koom nrog kev txhim kho thawj zaug. ntsiab kev tsim kho tshiab:

  • Qhov ua tau ntawm ib feem cloning yog nce kom ruaj khov thiab kev npaj txhij, tso cai rau koj hloov ib feem ntawm cov ntaub ntawv thiab ua haujlwm nrog cov ntawv tsis tiav ntawm cov chaw khaws cia. Ib tug raug clone luam tag nrho cov ntaub ntawv los ntawm lub repository, nrog rau txhua version ntawm txhua cov ntaub ntawv nyob rau hauv lub keeb kwm kev hloov. Rau cov chaw khaws ntaub ntawv loj heev, kev luam cov ntaub ntawv ua rau muaj kev nce ntxiv hauv cov tsheb khiav thiab qhov chaw disk, txawm tias tus tsim tawm tsuas yog txaus siab rau cov txheej txheem ntawm cov ntaub ntawv. Txhawm rau kom nws yooj yim dua los khaws tsuas yog ib feem ntawm tsob ntoo ua haujlwm, qhov kev tso tawm tshiab qhia txog kev sim "sparse-checkout" hais kom ua thiab qhov kev xaiv "--sparse" tshiab rau "clone" hais kom ua.

    Yav dhau los, cov txheej txheem xaiv cloning tau ua los ntawm txoj haujlwm lim txhawm rau lim tawm cov ntsiab lus tsis tsim nyog thiab "-tsis muaj-checkout" kev xaiv kom tsis txhob sau cov ntaub ntawv ploj lawm. Tom qab ntawd, ua ntej ua qhov kev txiav txim, nws yuav tsum tau ua kom lub core.sparseCheckout teeb thiab txheeb xyuas cov npe ntawm cov qauv tsis suav nrog hauv cov ntaub ntawv .git/info/sparse-checkout. Piv txwv li, txhawm rau clone yam tsis muaj blobs thiab tiv thaiv cov ntaub ntawv los ntawm kev muab rho tawm los ntawm subdirectories ntawm qhov tob 2 lossis ntau dua, koj tuaj yeem khiav:

    git clone --filter=blob:none --no-checkout /your/repository/no repo
    $cd rov
    $ cat >.git/info/sparse-checkout
    /*
    !/*
    EOF
    $ git config core.sparseCheckout 1
    $ git checkout.

    Qhov tshiab "git sparse-checkout" hais kom ua tau yooj yim heev rau kev ua haujlwm thiab txo cov txheej txheem ntawm kev teeb tsa kev ua haujlwm nrog qhov chaw cia tsis tiav rau cov lus txib hauv qab no:

    git clone --filter=blob:none --sparse /your/repository/no repo
    git sparse-checkout teeb /path/to/check/out

    Qhov kev hais kom qis-checkout tso cai rau koj los teeb tsa cov npe ntawm txoj hauv kev rau kev txiav tawm (teeb tsa) yam tsis tas yuav teeb tsa .git/info/sparse-checkout, nrog rau tso saib cov npe tam sim no ntawm txoj hauv kev (cov npe) thiab pab lossis lov tes taw ib nrab ntawm cov tshev tawm (pab kom /disable).

    Txhawm rau txhim kho kev ua haujlwm nrog cov chaw khaws ntaub ntawv loj heev thiab cov npe ntawm cov qauv, "git config core.sparseCheckoutCone", uas txwv cov qauv tso cai (tshwj tsis yog arbitrary .gitignore cov qauv, koj tuaj yeem txheeb xyuas seb txhua txoj hauv kev thiab tag nrho cov ntaub ntawv hauv ib lub npe subdirectory yuav tsum raug kuaj xyuas). Piv txwv li, yog tias lub chaw khaws ntaub ntawv loj muaj cov npe "A / B / C" thiab tag nrho cov haujlwm yog tsom rau hauv subdirectory "C", tom qab ntawd thaum koj qhib hom sparseCheckoutCone, cov lus txib "git sparse-checkout teeb A / B / C" yuav rho tawm tag nrho cov ntsiab lus ntawm "C", tab sis los ntawm "A" thiab "B" nws yuav rho tawm tsuas yog qhov tsim nyog los ua haujlwm nrog "C".

  • Los ntawm cov ntaub ntawv ("git rebase -h"), tag nrho cov ntaub ntawv xa mus rau "--preserve-merges" kev xaiv tau raug tshem tawm, uas tau raug tshem tawm thiab yuav tsum tau siv los hloov cov kev cog lus.git rebase --rebase-merges".
  • Txhawm rau txhim kho kev nyeem tau ntawm cov lus nrog thaj ua rau xa mus rau cov npe xa ntawv, "git format-patch -cover-from-description subject" kev xaiv tau ntxiv, thaum tau teev tseg, thawj kab lus los ntawm ceg lus piav qhia yog siv raws li cov ntsiab lus ntawm daim ntawv npog rau ib txheej ntawm thaj ua rau thaj.
  • Kev txhawb nqa rau kev siv ua ke ntawm "git thov -3way" hais kom ua thiab "merge.conflictStyle" teeb tsa ("git thov" tam sim no coj mus rau hauv tus account qhov tsis sib haum xeeb piav qhia style los ntawm merge.conflictStyle thaum nws tsim nyog los daws qhov teeb meem tom qab sim siv cov ntaub ntawv thaj rau lub chaw khaws cia).
  • Lub luag haujlwm txhais cov lej siv hauv kev ua haujlwm xws li "git diff / grep --show-function/-function-context" tau txuas ntxiv los txhawb kev txhais cov ciaj ciam hauv cov kev pabcuam lus Elixir.
  • Ib qho kev xaiv tshiab tau ntxiv rau "git add", "git commit", "git reset" thiab lwm cov lus txib - "-pathspec-from-file", uas ua rau nws tuaj yeem thauj cov npe ntawm txoj hauv kev los ntawm cov ntaub ntawv lossis cov dej nkag. , es tsis txhob teev lawv ntawm kab hais kom ua.
  • Qhov teeb meem nrog kev txheeb xyuas cov npe hloov npe ntawm cov ntawv teev npe thaum sau ntawv tau raug daws. Cov ntsiab lus tsis ua haujlwm yog tias cov ntsiab lus ntawm subdirectory tau tsiv mus rau hauv paus ntawm qhov chaw khaws cia.
  • Ib qho kev siv thawj zaug ntawm kev rov tsim dua "git add -i" hais kom ua, tso cai rau koj ntxiv cov ntsiab lus hloov pauv sib tham, rov sau dua los ntawm Perl rau C. Ib qho kev ua haujlwm zoo sib xws ntawm "git add -p" hais kom ua tab tom ua.
  • Cov lus txib "git log -graph" tau rov ua dua, tsim cov duab ASCII ntawm daim duab nrog keeb kwm ntawm kev hloov pauv hauv qhov chaw cia khoom. Lub rework ua rau nws muaj peev xwm txhim kho thiab ua kom yooj yim rau cov zis yam tsis muaj kev cuam tshuam cov qauv ntawm zaj dab neeg, uas, piv txwv li, daws qhov teeb meem nrog daim duab txuas mus dhau ntawm kab dav dav dav.
  • Qhov "git log --format = .. " kev xaiv tso cai rau koj hloov cov ntawv tso zis,
    txuas ntxiv nrog kev txhawb nqa rau "l / L" chij kom pom tsuas yog ib feem ntawm email chaw nyob qhia ua ntej lub cim "@" (piv txwv li, muaj txiaj ntsig zoo thaum txhua tus tsim tawm muaj tag nrho cov email hauv tib lub npe).

  • Ntxiv rau "set-url" subcommand rau "git submodule" hais kom ua.
  • Cov khoom siv kuaj tau raug kho tshiab hauv kev npaj rau kev hloov mus rau
    hashing algorithm SHA-2 hloov SHA-1.

Tau qhov twg los: opennet.ru

Ntxiv ib saib