Након три месеца развоја, дистрибуирани систем контроле извора Гит 2.43 је пуштен. Гит је један од најпопуларнијих, најпоузданијих и система за контролу верзија високих перформанси, који пружа флексибилне нелинеарне развојне алате засноване на гранању и спајању. Да би се обезбедио интегритет историје и отпорност на ретроактивне промене, имплицитно хеширање целокупне претходне историје се користи у сваком урезивању; такође је могуће сертификовати појединачне ознаке и урезивања дигиталним потписима програмера.
У поређењу са претходним издањем, нова верзија је укључивала 464 измене, припремљене уз учешће 80 програмера, од којих је 17 учествовало у развоју по први пут. Главне иновације:
- Опције „--филтер“ и „--филтер-то“ су додате команди „гит репацк“, што вам омогућава да поново пакујете спремиште узимајући у обзир наведени филтер објеката и, ако је потребно, преместите објекте који не задовољити наведени филтер на посебно место. Опције се могу користити за партиционисање спремишта према одређеним критеријумима (на пример, за уклањање непотребних или превеликих објеката), уз задржавање могућности приступа свим деловима коришћењем делимичног клонирања. На пример, да бисте оставили блобове мање од 1 МБ у спремишту и преместили друге велике објекте у посебно спремиште, можете покренути: $ гит инит —баре ../бацкуп.гит $ гит репацк -ад —филтер='блоб :лимит=1м' \ --филтер-то=../бацкуп.гит/објецтс/пацк/пацк
Иницијализација спремишта коришћењем делимичног клонирања омогућава вам да радите са некомплетном копијом спремишта, правилно обрађујући позиве објектима који недостају (када приступате објектима који недостају, они ће бити учитани у ходу по потреби).
- Додата је могућност рада са вишеструким датотекама пакета са информацијама о недостижним објектима („цруфт пакети“) који нису референцирани у спремишту (нису референцирани гранама или ознакама). Користећи нову опцију „гит репацк —мак-цруфт-сизе“ можете одредити максималну величину једне датотеке пакета и поделити базу података недоступних објеката у низ малих датотека пакета. Коришћење неколико малих пакета уместо једне велике може значајно да смањи И/О операције када поново пакујете спремишта са великим бројем недоступних објеката, пошто свака операција поновног паковања неће морати да препише све податке.
- Додато препознавање покушаја да се изврши двоструко поништавање урезивања путем „гит реверт“ и узимање ове чињенице у обзир приликом генерисања поништене поруке (ако поновите „гит реверт“ уместо „Реверт: Реверт: фик буг“, „Реаппли фик“ буг“ биће написано, а ако вратите промену трећи пут – „Врати поново примени исправку грешке“). $ гит реверт —без уређивања ГЛАВА >/дев/нулл $ гит реверт —без уређивања ГЛАВА >/дев/нулл $ гит лог —онелине а300922 (ХЕАД -> маин) Поново примените „поправку грешке“ 0050730 Врати „поправку грешке“ б290810 поправити грешку
- Опције "--рфц" и "--субјецт-префик" се могу користити заједно. На пример, да бисте генерисали слово са префиксом „[РФЦ ПАТЦХ бпф-нект]“ у насловној линији, можете да наведете: $ гит формат-патцх —субјецт-префик=“ПАТЦХ бпф-нект“ —рфц
- Команда „гит лог“ омогућава да се наведе чувар места „%(децорате)“ како би се приказала имена сродних грана приликом навођења формата помоћу опције „--формат“, на пример: $ гит лог --формат='% цр%(децорате) (%х) %с' пре 3 дана (ХЕАД -> мастер, оригин/мастер, оригин/ХЕАД) (е0939бец27) РелНотес: мање поправке формулације у белешкама о издању 2.43.0 пре 7 дана (ознака: в2.43.0 .1-рц801) (дадеф3б2.43) Гит 1-рц7 пре 8 дана (4ед7538ебXNUMX) Споји грану 'тб/рев-лист-унпацкед-фик'
- Додата је могућност примене .маилмап правила на спецификације формата наведене преко --формат опције, као што су „%(аутхорнаме)“ и „%(цоммиттеремаил)“ на „гит фор-еацх-реф“ и сличне команде.
Извор: опеннет.ру
