Fa'asa'olotoina o le fa'asoa fa'asoa fa'atonuga Git 2.22

Fa'ailoa fa'amatu'u o se fa'asoa fa'asoa fa'atonu git 2.22.0. Git o se tasi o faiga sili ona lauiloa, faʻatuatuaina ma maualuga-faʻatinoga faʻatonuga faʻatonuga, tuʻuina atu mea faigaluega faʻaleleia e le o laina laina e faʻavae i luga o le lala ma le tuʻufaʻatasia. Ina ia faʻamautinoa le faʻamaoni o tala faʻasolopito ma le teteʻe atu i suiga toe faʻafoʻisia, faʻaogaina le faʻaogaina o le tala faʻasolopito atoa i taʻiala taʻitasi, ma e mafai foʻi ona faʻamaonia pine taʻitasi ma faʻamaonia ma saini numera a tagata atiaʻe.

Pe a faʻatusatusa i le faʻasalalauga talu ai, o le lomiga fou e aofia ai le 745 suiga, saunia ma le auai o le au atinaʻe e 74, lea na auai ai le 18 i le atinaʻe mo le taimi muamua. tele mea fou:

  • Avanoa talu mai le faʻamalolo 1.18, o le fou commit rebase mode "git rebase --rebase-merges" e suitulaga i le "--preserve-merges" filifiliga tuai, lea ua le toe faʻaaogaina. O le "git rebase" o loʻo faʻaaogaina e sui ai se faasologa o tautinoga i se faʻavae fou, mo se faʻataʻitaʻiga, e faʻanofo ai se lala ese o loʻo atiaʻe se vaega fou i le tulaga o loʻo i ai nei o le paranesi matai, lea e aofia ai faʻaleleia faʻaopoopo pe a uma le lala. :

    o - o - o (lo'u-foliga)

    /

    o - o - o - o - o (matai)

    o - o - o (lo'u-foliga)

    /

    o - o - o - o - o (matai)

    Ina ia faʻasaoina le fausaga o le paranesi i totonu o se lala ua faimalaga, o le "--preserve-merges" filifiliga e mafai ona faʻaaogaina muamua, lea, pe a taʻavale i le faiga faʻafesoʻotaʻi (git rebase -i --preserve-merges), faʻatagaina le faʻasaʻoina o le tala faʻasolopito, ae e le'i fa'amautinoaina le fa'asaoina atoatoa o le fausaga o fale teu oloa. O le faiga fou "--rebase-merges" e mafai ai e oe ona faʻasaoina le fausaga o suiga i le lala o loʻo faimalaga, aʻo tuʻuina atu le atoaga o gaioiga faʻafesoʻotaʻi, e aofia ai le tapeina, toe faʻavasegaina ma le toe faʻaigoaina o tautinoga.

    Mo se faʻataʻitaʻiga, "--rebase-merges" e mafai ai toe fa'apipi'i commit mai se lala ese i se lala matai fou, a'o fa'atumauina le fausaga o le lala i le lala femalaga'i, ma fai ni suiga i fa'amatalaga commit i luga o le lele.

  • Faʻaopoopo le lagolago mo le fausiaina o se lala fou e faʻavae i luga o le iʻuga o le fuafuaina o le tuʻufaʻatasia faavae o isi lala e lua (faʻavae faʻavae, fusia i se tuaa masani) e faʻaaoga ai le fausiaina o le "git branch new A...B" ma le "git checkout -b new A...B", lea o le "A ...B" e aofia ai le faʻamalamalamaina o se faʻavae tuʻufaʻatasia i le va o tautinoga faʻamaonia e lua, e tutusa ma le faʻafefea e le "git checkout A...B" ona sui le HEAD i le base commit ma le "diff A. ..B" o loʻo faʻaalia ai suiga i le va o le commit "B" ma le tutusa ma le commit "A" "Ancestor.

    Mo se faʻataʻitaʻiga, pe a galue i luga o se lala eseʻese o loʻu foliga, e mafai ona faʻaogaina lenei vaega pe a e manaʻo e amata mai se lala ese, mo se faʻataʻitaʻiga, mai le nofoaga lava e tasi i le paranesi matai lea na siaki ai le lala my-feature. I le taimi muamua, e manaʻomia le suʻesuʻeina ma le lima o le suiga o le log, lea e le faigofie pe afai e tele sau talaʻaga o suiga, ona faʻatautaia lea o le "git merge-base master my-feature" e fuafua ai le hash o le faʻavae tuʻufaʻatasia i le va o le matai ma laʻu-foliga lala. ma le fatuina o se lala fou e fesoʻotaʻi ma le tuaa masani " git branch my-other-feature hash." I le Git 2.22, e mafai ona e fa'aogaina le syntax "git branch my-other-feature A...B" e fai ai se lala e fa'atatau i le tu'ufa'atasiga o isi lala e lua;

  • Faʻaopoopo le "git branch --show-current" filifiliga e faʻaalia ai le igoa o le lala na maua i le taimi o le siakiina;
  • Faʻaopoopo le "git checkout -no-overlay - dir" filifiliga, lea e mafai ai, pe a faia se faʻagaioiga siaki, e aumai ai mea o loʻo i totonu o le dir directory i se fomu e fetaui lelei ma le tulaga o le lala matua. Mo se faʻataʻitaʻiga, afai o loʻo i ai se faila i le kopi faʻapitonuʻu o le dir directory e le oi totonu o le paranesi sili, ona le mafai lea pe a faʻatinoina le "git checkout master - dir" o le a tuʻu, ma afai o le "--no-overlay "O le filifiliga ua faʻamaonia, o le a tapeina;
  • O le "git diff" poloaiga e faʻaaogaina se API lautele mo filifiliga filifiliga, lea e mafai ai ona tuʻufaʻatasia le faʻaogaina o filifiliga ma isi git utilities. Mo se faʻataʻitaʻiga, i le "git diff", o filifiliga uma o loʻo i ai nei a latou faʻalavelave ("--function-context" ma le "--no-function-context");
  • Faʻaopoopo le tomai e faʻamama ai faʻailoga faʻapipiʻi o loʻo faʻapipiʻi i mea e fai i totonu o le "git log" output ("trailer" - faʻamatalaga faʻaopoopo fuʻa, e pei ole Signed-off-by ma Co-authored-by). E mafai ona fa'amama fa'ailoga i le ki ma le tau, mo se fa'ata'ita'iga:
    "git log --pretty="%(trailers:key=Su'esu'e-e,valueonly)";

  • O se afi su'esu'e fou, Trace2, ua fa'aopoopoina, e ofoina atu se fa'asologa sili atu ona fetu'una'i ma fa'atulagaina galuega. Trace2 e mafai ai e oe ona aoina le telemetry e uiga i faʻatinoga faʻatinoina ma faʻamatalaga faʻatinoga mo faʻamatalaga auiliili ma le faʻaogaina (o le tagata e faʻaaogaina e tofia e le tagata faʻaoga, e leai se faʻamatalaga e lafoina i fafo);
  • O le lipoti o le "git bisect" ua sili atu ona faigofie ona faitau, lea ua sili atu ona manino le faʻamalamalamaina o faʻafitauli faʻafitauli ma faʻaalia ai faʻamaumauga otootoga o suiga mo faila taʻitasi (i le maualuga o le numera o laina ua suia);
  • O le heuristics mo le fuafuaina o le toe fa'aigoaina o le lisi ua toe fa'aleleia e aveese ai le fa'apipi'iina sese o igoa fa'aigoa. Pe a masalosalo, o ia tusitaiala ua faailogaina nei e feteenai;
  • O se lapataiga e faʻaalia pe a e taumafai e faʻapipiʻi se pine i luga o se isi pine, lea e masani ona faia i se mea sese ma e mafai ona taʻitaʻia ai le setiina o le pine i luga o le mea sese (mo se faʻataʻitaʻiga, o se fausiaina e pei o le "git tag -f -m "feʻau faʻafouina" my-tag1 my-tag2″ o le a mafua ai ona faia se pine i luga o le pine tuai, ae na faʻamoemoe le tagata e faʻapipiʻi le pine fou e faʻapipiʻi i luga o le tautinoga e faasino i ai le pine tuai);
  • E mafai ona fa'atupuina mo fa'amaufa'ailoga bitmap (fa'asologa o le "reachability bitmaps" fa'avae), lea e teu ai fa'amaumauga e uiga i seti o mea e avanoa mo ta'utinoga ta'itasi ma fa'atagaina oe e vave fa'ailoa le iai o se mea fa'avae. O lenei fausaga e matua fa'aitiitia ai le taimi fa'atino o fa'agaioiga o fa'amaumauga (git fetch).

puna: opennet.ru

Faaopoopo i ai se faamatalaga