Sakin tsarin sarrafa tushen rarraba Git 2.25

Akwai saki tsarin sarrafa tushen rarraba Git 2.25.0. Git yana ɗaya daga cikin mafi mashahuri, abin dogaro da tsarin sarrafa nau'ikan ayyuka masu inganci, yana ba da sassauƙan kayan aikin haɓaka marasa daidaituwa dangane da reshe da haɗuwa. Don tabbatar da amincin tarihi da juriya ga sauye-sauye na dawowa, ana amfani da hashing na tarihin da ya gabata a cikin kowane alƙawari; Hakanan yana yiwuwa a tabbatar da alamun kowane mutum da aikatawa tare da sa hannun dijital na masu haɓakawa.

Idan aka kwatanta da wanda ya gabata, sabon sigar ya haɗa da canje-canje 583, wanda aka shirya tare da sa hannun masu haɓaka 84, waɗanda 32 suka shiga cikin haɓakawa a karon farko. Main sababbin abubuwa:

  • Yiwuwar cloning na ɓangaren yana gabatowa da kwanciyar hankali da cikakken shiri, yana ba ku damar canja wurin wani ɓangare na bayanan kawai kuma kuyi aiki tare da kwafin da bai cika ba. Klone na yau da kullun yana kwafin duk bayanai daga ma'adanar, gami da kowane sigar kowane fayil a tarihin canji. Don manyan ma'ajiyar ajiya, kwafin bayanai yana haifar da haɓakar zirga-zirgar ababen hawa da sarari diski, koda kuwa mai haɓakawa yana da sha'awar juzu'in fayilolin. Don sauƙaƙa maido da ɓangaren bishiyar tushen aiki kawai, sabon sakin yana gabatar da umarnin gwaji na "sparse-checkout" da sabon zaɓi na "--sparse" don umarnin "clone".

    A baya can, an aiwatar da tsarin cloning na zaɓi ta hanyar aikin tacewa don tace abubuwan da ba dole ba da kuma zaɓin "-no-checkout" don kashe cika fayilolin da suka ɓace. Bayan haka, kafin aiwatar da aikin dubawa, ya zama dole don kunna saitin core.sparseCheckout da ayyana jerin hanyoyin da aka keɓe a cikin fayil ɗin .git/info/sparse-checkout. Misali, don clone ba tare da ɓata lokaci ba kuma hana fayiloli daga fitar da su daga ƙananan litattafai na zurfin 2 ko fiye, zaku iya gudu:

    git clone --filter = blob: babu --no-checkout / your / repository/ here repo
    $cd repo
    $ cat > .git/info/sparse-checkout <EOF
    /*
    !/*
    EOF
    $ git config core.sparseCheckout 1
    $ git rajistan shiga.

    Sabuwar umarnin "git sparse-checkout" yana sauƙaƙa aikin sosai kuma yana rage tsarin tsara aiki tare da ma'ajin da bai cika ba zuwa umarni masu zuwa:

    git clone --filter = blob: babu --sparse / your / repository/ here repo
    git sparse-checkout saita /path/to/check/out

    Umurnin duba-cancanci yana ba ku damar saita jerin hanyoyin don wurin biya (saitin) ba tare da saita .git/info/sparse-checkout da hannu ba, da kuma nuna jerin hanyoyin (jeri) na yanzu da kunna ko kashe ɓangarori na ɓangarori (kunna kunnawa). / kashe).

    Don inganta aiki tare da manyan ma'ajiya da lissafin samfuri, "git config core.sparseCheckoutCone", wanda ke iyakance tsarin da aka ba da izini (maimakon tsarin .gitignore na sabani, za ku iya tantance ko duk hanyoyi da duk fayiloli a cikin babban kundin adireshi da aka bayar ya kamata a duba su). Misali, idan babban ma'ajiyar ajiya yana da kundin adireshi "A/B/C" kuma duk aikin ya mayar da hankali ne a cikin babban littafin "C", sannan lokacin da kuka kunna yanayin sparseCheckoutCone, umarnin "git sparse-checkout saita A/B/ C" zai fitar da dukkan abubuwan da ke cikin "C", amma daga "A" da "B" zai fitar da sassan da ake bukata don aiki tare da "C".

  • Daga takardun ("git rebase -h"), an cire duk nassoshi game da zaɓin "-preserve-merges", wanda aka soke kuma yakamata a yi amfani da shi a maimakon ƙaura saitin aikatawa.git rebase --rebase-merge".
  • Don haɓaka iya karanta saƙonni tare da facin da aka aika zuwa jerin aikawasiku, an ƙara zaɓin “git format-patch —cover-from-description topic”, idan an kayyade, ana amfani da sakin layi na farko daga rubutun bayanin reshe azaman batun batun harafin murfin don saitin faci.
  • Taimakawa da aka aiwatar don haɗakar amfani da umarnin "git apply -3way" da kuma "merge.conflictStyle" saitin ("git apply" yanzu yana la'akari da salon bayanin rikici daga merge.conflictStyle lokacin da ya zama dole don warware rikici bayan ƙoƙari. don amfani da fayil ɗin faci zuwa wurin ajiya).
  • Lambar ma'anar aikin da aka yi amfani da ita a cikin ayyuka kamar "git diff/grep --show-function/-function-context" an tsawaita don tallafawa ayyana iyakoki a cikin shirye-shiryen harshe. Elixir.
  • An ƙara sabon zaɓi zuwa "git add", "git commit", "git reset" da sauran umarni - "-pathspec-from-file", wanda ke ba da damar loda jerin hanyoyin daga fayil ko rafi na shigarwa. , maimakon jera su akan layin umarni.
  • An warware matsalar gano sake suna a matakin kundin adireshi lokacin rubuta aikata laifuka. Ma'anar ba ta yi aiki ba idan an matsar da abubuwan da ke cikin babban kundin adireshi zuwa tushen ma'ajiyar.
  • An gabatar da fara aiwatar da umarnin “git add-i” da aka sake tsara, yana ba ku damar ƙara abubuwan da aka canza ta hanyar mu’amala, sake rubutawa daga Perl zuwa C. Ana aiwatar da irin wannan aikin na umarnin "git add -p".
  • An sake sabunta umarnin "git log-graph", yana samar da hoton ASCII na jadawali tare da tarihin canje-canje a ma'ajiyar. Sake aikin ya ba da damar ingantawa da sauƙaƙe fitarwa ba tare da gurbata tsarin labarin ba, wanda, alal misali, ya warware matsalar tare da hoton da ya wuce iyakar layin layin.
  • Zaɓin "git log --format=..." yana ba ku damar canza tsarin fitarwa,
    an fadada tare da goyan bayan tutocin "l/L" don nuna kawai ɓangaren adireshin imel ɗin da aka nuna kafin alamar "@" (misali, mai amfani lokacin da duk masu haɓakawa suna da duk imel a cikin yanki ɗaya).

  • Ƙara ƙaramin umarni na "set-url" zuwa umurnin "git submodule".
  • An sabunta kayan gwaji a cikin shirye-shiryen canzawa zuwa
    hashing algorithm SHA-2 maimakon SHA-1.

source: budenet.ru

Add a comment