Բաշխված աղբյուրի կառավարման համակարգի թողարկում Git 2.23

Ներկայացվել է բաշխված աղբյուրի կառավարման համակարգի թողարկում Git 2.23.0- ը. Git-ը տարբերակների կառավարման ամենահայտնի, հուսալի և բարձր կատարողական համակարգերից մեկն է, որն ապահովում է ճկուն ոչ գծային զարգացման գործիքներ՝ հիմնված ճյուղավորման և միաձուլման վրա: Պատմության ամբողջականությունն ու հետադարձ փոփոխությունների դիմադրությունն ապահովելու համար օգտագործվում է ամբողջ նախորդ պատմության անուղղակի հաշինգը յուրաքանչյուր կոմմիթում, ինչպես նաև հնարավոր է հաստատել անհատական ​​պիտակներ և պարտավորություններ մշակողների թվային ստորագրություններով:

Նախորդ թողարկման համեմատ՝ նոր տարբերակը ներառում էր 505 փոփոխություն՝ պատրաստված 77 ծրագրավորողների մասնակցությամբ, որոնցից 26-ն առաջին անգամ մասնակցեցին մշակմանը։ Հիմնական նորամուծություններ:

  • Փորձարարական «git switch» և «git restore» հրամանները ներդրվում են «git checkout» հնարավորությունները առանձնացնելու համար, ինչպիսիք են ճյուղերի մանիպուլյացիա (փոխարկում և ստեղծում) և ֆայլերի վերականգնում աշխատանքային գրացուցակում («git checkout $commit - $filename»): կամ անմիջապես բեմադրության տարածքում («—staging», «git checkout»-ում նմանը չունի): Հարկ է նշել, որ ի տարբերություն «git checkout»-ի՝ «git restore»-ը հեռացնում է չհետևված ֆայլերը վերականգնվող դիրեկտորիաներից («--no-overlay» ըստ լռելյայն):
  • Ավելացվեց «git merge –quit» տարբերակը, որը, «-abort»-ի նման, դադարեցնում է մասնաճյուղերի միաձուլման գործընթացը, սակայն աշխատանքային գրացուցակը մնում է անձեռնմխելի։ Այս տարբերակը կարող է օգտակար լինել, եթե ձեռքով միաձուլման ընթացքում կատարված որոշ փոփոխություններ նախընտրելի են թողարկվել որպես առանձին հանձնում:
  • «git clone», «git fetch» ​​և «git push» հրամաններն այժմ հաշվի են առնում կապակցված պահոցներում կատարվող պարտավորությունների առկայությունը (փոխարինողներ);
  • Ավելացված է «git blame —ignore-rev» և «—ignore-revs-file» տարբերակները թույլ են տալիս բաց թողնել փոքր փոփոխություններ կատարող պարտավորությունները (օրինակ՝ ձևաչափման շտկումներ);
  • Ավելացրել է «git cherry-pick —skip» տարբերակը՝ հակամարտող պարտավորությունները բաց թողնելու համար («git reset && git cherry-pick —continue» հաջորդականության անգիրացված անալոգը);
  • Ավելացվեց status.aheadBehind պարամետրը, որը մշտապես ֆիքսում է «git status -[no-]ahead-behind» տարբերակը;
  • Այս թողարկման դրությամբ «git log»-ը լռելյայն հաշվի է առնում փոստի քարտեզով կատարված փոփոխությունները, ինչպես որ git shortlog-ն արդեն իսկ անում է.
  • 2.18-ում ներկայացված commit graph-ի (core.commitGraph) փորձնական քեշի թարմացման գործողությունը զգալիորեն արագացվել է: Նաև git for-each-ref ավելի արագ դարձրեց մի քանի ձևանմուշներ օգտագործելիս և նվազեցրեց զանգերի թիվը դեպի auto-gc «git fetch —multiple»-ում;
  • «git branch --list»-ն այժմ միշտ ցույց է տալիս անջատված HEAD-ը ցուցակի հենց սկզբում՝ անկախ տեղայնությունից:

Source: opennet.ru

Добавить комментарий