Rilaxx tal-kontroll tas-sors Git 2.35

Wara xahrejn ta 'żvilupp, is-sistema ta' kontroll tas-sors distribwit Git 2.35 ġiet rilaxxata. Git hija waħda mis-sistemi ta 'kontroll tal-verżjoni l-aktar popolari, affidabbli u ta' prestazzjoni għolja, li tipprovdi għodod ta 'żvilupp mhux lineari flessibbli bbażati fuq fergħat u għaqda. Biex tiġi żgurata l-integrità tal-istorja u r-reżistenza għal bidliet retroattivi, f'kull impenn jintuża hashing impliċitu tal-istorja preċedenti kollha; huwa wkoll possibbli li jiġu ċertifikati tikketti individwali u impenji b'firem diġitali tal-iżviluppaturi.

Meta mqabbel mar-rilaxx preċedenti, il-verżjoni l-ġdida kienet tinkludi 494 tibdil, ippreparat bil-parteċipazzjoni ta 'żviluppatur 93, li minnhom 35 ħadu sehem fl-iżvilupp għall-ewwel darba. Innovazzjonijiet ewlenin:

  • Il-possibbiltajiet għall-użu ta 'ċwievet SSH biex jiffirmaw b'mod diġitali oġġetti Git ġew estiżi. Biex jiġi limitat il-perjodu ta 'validità ta' diversi ċwievet, ġie miżjud appoġġ għad-direttivi OpenSSH "valid-before" u "valid-after", li bihom tista 'tiżgura xogħol korrett bil-firem wara li ċ-ċavetta tkun iddawwar minn wieħed mill-iżviluppaturi. Qabel dan, kien hemm problema bis-separazzjoni tal-firem biċ-ċavetta l-qadima u dik ġdida - jekk tħassar iċ-ċavetta l-qadima, ikun impossibbli li tivverifika l-firem li saru magħha, u jekk tħalliha, allura jibqa’ possibbli li toħloq firem ġodda biċ-ċavetta l-antika, li diġà ġiet sostitwita b'ċavetta oħra. Bl-użu valid-before u valid-after tista' tissepara l-ambitu taċ-ċwievet abbażi tal-ħin li nħolqot il-firma.
  • Fl-issettjar merge.conflictStyle, li jippermettilek tagħżel il-mod għall-wiri ta' informazzjoni dwar kunflitti waqt amalgamazzjoni, deher appoġġ għall-mod "zdiff3", li jċaqlaq il-linji standard kollha speċifikati fil-bidu jew fit-tmiem tal-kunflitt barra l-kunflitt. żona, li tippermetti preżentazzjoni aktar kompatta tal-informazzjoni.
  • Il-mod "--staged" ġie miżjud mal-kmand "git stash", li jippermettilek taħbi biss bidliet miżjuda mal-indiċi, pereżempju f'sitwazzjoni meta għandek bżonn tipposponi temporanjament xi wħud mill-bidliet kumplessi sabiex l-ewwel żid dak li huwa diġà lest u ttratta l-bqija wara ftit. Il-mod huwa simili għall-kmand "git commit", billi tikteb biss il-bidliet imqiegħda fl-indiċi, iżda minflok ma toħloq impenn ġdid f'"git stash —staged", ir-riżultat jinħażen fiż-żona temporanja stash. Ladarba l-bidliet ikunu meħtieġa, jistgħu jiġu rritornati bil-kmand "git stash pop".
  • Żdiedu speċifikatur tal-format ġdid mal-kmand "git log", "--format=%(describe)", li jippermettilek tikkombina l-output ta' "git log" mal-output tal-kmand "git describe". Il-parametri għal "git describe" huma speċifikati direttament ġewwa l-ispeċifikatur ("-format=%(describe:match= ,eskludi= )"), li fiha tista' tinkludi wkoll tags imqassra ("-format=%(describe:tags= )") u kkonfigura n-numru ta' karattri eżadeċimali biex jidentifikaw oġġetti ("—format=%(describe:abbrev= )")). Pereżempju, biex telenka l-aħħar 8 impenji li t-tags tagħhom m'għandhomx tikketta tal-kandidat għar-rilaxx, u tispeċifika identifikaturi ta' 8 karattri, tista' tuża l-kmand: $ git log -8 —format='%(describe:exclude=*-rc *,abbrev=13 )' v2.34.1-646-gaf4e5f569bc89 v2.34.1-644-g0330edb239c24 v2.33.1-641-g15f002812f858 v2.34.1-643-g2edb95c94 v056-2.34.1-g642f56f95 v8-7-g2.34.1edb203c9 gb2980902bd2.34.1 bbc640f3 v41-212-gffb2.34.1f639d v36-65715- gdf4132cXNUMXadebXNUMX vXNUMX-XNUMX-gXNUMXbXNUMXaXNUMX
  • L-issettjar user.signingKey issa jappoġġja tipi ġodda ta 'ċwievet li mhumiex limitati għat-tip "ssh-" u li jispeċifikaw il-mogħdija tal-fajl sħiħa għaċ-ċavetta. Tipi alternattivi huma speċifikati bl-użu tal-prefiss "key::", pereżempju "key::ecdsa-sha2-nistp256" għal ċwievet ECDSA.
  • Il-veloċità tal-ġenerazzjoni ta 'lista ta' bidliet fil-modalità "—istogramma", kif ukoll meta tintuża l-għażla "—color-moved-ws", li tikkontrolla l-enfasi ta 'spazji f'differenza tal-kulur, żdiedet b'mod notevoli.
  • Il-kmand "git jump", użat biex jipprovdi lil Vim b'informazzjoni dwar il-qabża eżatta għall-pożizzjoni mixtieqa f'fajl meta jiġu analizzati l-kunflitti tal-amalgamazzjoni, tara d-diffs, jew iwettaq operazzjoni ta 'tfittxija, jipprovdi l-abbiltà li jonqos il-kunflitti tal-għaqda koperti. Pereżempju, biex tillimita l-operazzjonijiet għad-direttorju "foo" biss, tista' tispeċifika "git jump merge - foo", u teskludi d-direttorju "Dokumentazzjoni" mill-ipproċessar - "git jump merge - ':^Dokumentazzjoni'"
  • Sar xogħol biex jiġi standardizzat l-użu tat-tip "size_t" minflok "unsigned long" għal valuri li jirrappreżentaw id-daqs tal-oġġetti, li għamilha possibbli li jintużaw filtri "nodfa" u "smudge" b'fajls akbar minn 4 GB fuq il-pjattaformi kollha, inklużi pjattaformi bil-mudell tad-dejta LLP64 , it-tip "unsigned long" li fih huwa limitat għal 4 bytes.
  • L-għażla “-empty=(stop|drop|keep)” ġiet miżjuda mal-kmand “git am”, li jippermettilek tagħżel l-imġieba għal messaġġi vojta li ma fihomx irqajja meta taqsam irqajja mill-kaxxa postali. Il-valur "stop" se jtemm l-operazzjoni kollha ta 'patching, "drop" se taqbeż garża vojta, u "keep" toħloq impenn vojt.
  • Żieda appoġġ għal indiċi parzjali (indiċi sparse) mal-kmandi "git reset", "git diff", "git blame", "git fetch", "git pull" u "git ls-files" biex itejbu l-prestazzjoni u jiffrankaw l-ispazju f' repożitorji , li fihom isiru operazzjonijiet ta' klonazzjoni parzjali (sparse-checkout).
  • Il-kmand "git sparse-checkout init" ġie deprecato u għandu jiġi sostitwit b'"git sparse-checkout set".
  • Miżjud implimentazzjoni inizjali ta 'backend "reftable" ġdid għall-ħażna ta' referenzi bħal fergħat u tikketti fir-repożitorju. Il-backend il-ġdid juża ħażna ta 'blokki użata mill-proġett JGit u huwa ottimizzat għall-ħażna ta' numri kbar ħafna ta 'referenzi. Il-backend għadu mhux integrat mas-sistema refs u mhux lest għall-użu prattiku.
  • Il-paletta tal-kuluri tal-kmand "git grep" ġiet aġġustata biex taqbel mal-utilità GNU grep.

Sors: opennet.ru

Żid kumment