Ntọhapụ njikwa isi mmalite Git 2.54

A tọhapụrụ Git 2.54, usoro njikwa koodu isi mmalite nke kesara. Git nwere arụmọrụ dị elu ma na-enye ikike mmepe na-abụghị nke ahịrị dabere na njikọta na njikọta. Iji hụ na iguzosi ike n'ezi ihe na iguzogide mgbanwe ndị na-aga n'ihu, ọ na-eji hashing nke akụkọ ihe mere eme gara aga niile na nkwekọrịta ọ bụla, yana mbinye aka dijitalụ nke mkpado na nkwa nkeonwe. Git nwere ikike n'okpuru ikike GPLv2+.

Ma e jiri ya tụnyere nke ewepụtara na mbụ, ụdị ọhụrụ a gụnyere mgbanwe 770, nke ndị mmepe 137 nyere aka (66 n'ime ha bụ ndị ọhụrụ na mmepe Git). Isi ihe ọhụrụ gụnyere:

  • E tinyela iwu "git history" n'ọrụ, na-enye ikike nnwale maka idegharị akụkọ ihe mere eme commit, nke dị mfe ma dịkwa nchebe iji karịa imegharị commit na "git rebase." E nyere ọrụ abụọ:
    • okwu mgbanwe akụkọ ihe mere eme git " idegharịa ozi ahụ na nkwekọrịta akọwapụtara na-agbanweghị osisi ọrụ ma ọ bụ ndeksi (ma e wezụga ndetu ahụ, ihe ndị ọzọ ka na-adịghị emetụta). Dịka ọmụmaatụ, iji dozie njehie.
    • nkewa akụkọ ihe mere eme git » iji kewaa nkwa ahụ akọwapụtara n'ime nkwa abụọ dị iche iche, na-ebugharị akụkụ ahọpụtara site na nkwa mbụ gaa na nkwa ọzọ.

    Mwepụta ndị ga-abịa n'ọdịnihu ga-agụnye iwu ndị ọzọ: "git history fixup" iji dozie commit, "git history drop" iji wepụ commit, "git history reorder" iji gbanwee usoro commit, na "git history squash" ka ọ bụrụ squash commit.

  • E tinyela usoro ọhụrụ maka ịkọwapụta nko na faịlụ nhazi. Kama itinye edemede nwere nko na ndekọ ".git/hooks" na ebe nchekwa ọ bụla, enwere ike ịkọwapụta iwu maka ịkpọ oku nko ozugbo na faịlụ nhazi. Enwere ike ijikọ ntọala na ebe nchekwa ma ọ bụ kọwaa na faịlụ nhazi nke metụtara ebe nchekwa niile (/etc/gitconfig) ma ọ bụ ebe nchekwa ndị ọrụ (~/.gitconfig). Enwere ike ijikọ ọtụtụ nko na otu ihe omume. A ka ga-akpọ Scripts sitere na ".git/hooks", mana a na-agba ha mgbe ejiri nko site na faịlụ nhazi. Iji lee ndepụta nko, jiri iwu "git hook list", ma gbanyụọ oku nko nhọrọ, jiri ntọala "nko". .enabled = ụgha." [hook "linter"] ihe omume = pre-commit commit command = ~/bin/linter --cpp20 [hook "no-leaks"] ihe omume = pre-commit commit command = ~/bin/leak-detector $ git hook list pre-commit global linter ~/bin/linter --cpp20 local no-leaks ~/bin/leak-detector
  • Iwu "git maintenance" na-eji usoro "geometric" eme ihe na ndabara ("git config set maintenance.strategy geometric"), nke na-ebelata oge mmezi maka nnukwu monorepositories. Ma e jiri ya tụnyere usoro ejiri mee ihe na mbụ, nke jiri usoro yiri "git gc," usoro ọhụrụ ahụ na-ezere ịkwakọ ihe niile ma wepụ ọrụ ndị na-ewe nnukwu ego dịka ijikọta faịlụ ngwugwu niile (ebe o kwere mee, a na-eme njikọta n'akụkụ na-enweghị iwepụ ihe ndị ehichapụrụ).
  • Ebugharịla Database Object (ODB) na API ndị metụtara ya gaa na usoro ọhụrụ dabere na backends ndị a na-ejikọta. Nhazigharị a na-ewepụ usoro nchekwa ihe ma ga-eme ka mmejuputa atụmatụ dị ka backends na usoro ihe ndị ọzọ, dịka ọmụmaatụ, maka nchekwa dị irè karịa nke nnukwu faịlụ binary ma ọ bụ maka ime ka arụmọrụ nke nnukwu ọrụ nnabata Git dịkwuo mma.
  • Iwu "git repo structure", nke na-egosi ozi gbasara nhazi ebe nchekwa, na-egosi ọ bụghị naanị nha zuru oke, kamakwa ihe ndị kachasị ukwuu nke ụdị ọ bụla, na-enye gị ohere ịtụle nha na-ejighị ngwa git-sizer nke ndị ọzọ. $ git repo structure … | * Ihe ndị kacha ibu | | | * Nkwa | | | * Nha kachasị [1] | 17.23 KiB | | * Ndị nne na nna kachasị [2] | 10 | | * Osisi | | | * Nha kachasị [3] | 58.85 KiB | | * Ntinye kachasị [4] | 1.18 k | | * Blobs | | | * Nha kachasị [5] | 1019.51 KiB | | * Akara | | | * Nha kachasị [6] | 7.13 KiB |
  • Na iwu "git replay", ejiri kama "git rebase" mee ka akụkọ ihe mere eme dịghachi ọhụrụ na ihe nkesa Na-enweghị osisi na-arụ ọrụ, a na-eme ka mmelite atọm ref rụọ ọrụ site na ndabara (kama ịdepụta iwu mmelite-ref iji mee ihe n'aka), a na-etinye nhọrọ "--revert" maka iwepụ mgbanwe site na usoro nkwekọrịta, a na-atụfu nkwa efu ndị sitere na ya, a na-ewebatakwa ikike ịhazi akụkọ ihe mere eme laghachi na nkwa mgbọrọgwụ.
  • Agbakwunyere nhọrọ "--maximal-only" na "git rev-list" na iwu ndị yiri ya iji gosi naanị nkwa ndị ndị ọzọ na-agaghị eru.
  • Iwu "git repo info" nwere nhọrọ "--keys" ugbu a iji depụta igodo niile amaara.
  • Mgbe ị na-agagharị n'etiti ngọngọ koodu site na iji igodo "J" na "K" na iwu "git add -p", a na-akara ngọngọ ndị akwadoro na ndị a na-awụfu ugbu a. Agbakwunyela nhọrọ "--no-auto-advance" iji gbanyụọ mmepe akpaka na faịlụ na-esote, na-enye gị ohere ịlaghachi na faịlụ ndị gara aga tupu ị mee ya.
  • Emeela ka njikọ weebụ "gitweb" dị mma maka ojiji na ngwaọrụ mkpanaka.
  • Iwu "git apply --directory" na-ahụ na a na-eme ka ụzọ faịlụ dị mma tupu e jiri ya, dịka "./un/../normalized/path".
  • A na-edekọ ikike itinye iwu ndị dị mkpa site n'itinye faịlụ "git-". »n'ime ndekọ ahụ nwere faịlụ ndị a na-arụ ọrụ.
  • Agbakwunyela nkwado maka asambodo ndị ahịa na iwu 'git send-email'.
  • Iwu "git status" ugbu a nwere ntọala "status.compareBranches", nke na-enye gị ohere ịkọwapụta alaka iji tụnyere alaka dị ugbu a. [status] compareBranches = @{upstream} @{push}
  • Agbakwunyela nhọrọ "--trailer" na git rebase iji mee ka ọ dịrị mfe itinye metadata na nkwekọrịta niile. git rebase --trailer "Reviewed-by: Test" »
  • Iwu 'git fast-import' nwere ike ugbu a iji dochie mbinye aka maka nkwa ndị na-abaghị uru mgbe ebubatara.
  • Agbakwunyere nkwado maka mkpokọta ndeksi ọtụtụ ngwugwu (MIDX), nke na-ejikọta obere oyi akwa ndeksi MIDX nwere ozi nnweta ihe na bitmaps ndị metụtara ya, na-ebelata ọnụọgụ nke oyi akwa agbakọtara na ebe nchekwa ogologo oge.
  • Iwu "git backfill" na-akwado ugbu a ịkọwapụta mgbanwe (commit ranges) na path masks (pathspecs) iji belata akụkụ nke akụkọ mgbanwe ebudatara. git backfill main~100..main git backfill — '*.c'
  • Agbakwunyere ụdị ndị ọzọ maka ịkpọ iwu "git config list": "git config -l" na "git config --list".
  • Kwe ka mkpụrụedemede ndị na-abụghị ASCII dị na aha aha iwu akọwapụtara na faịlụ nhazi. [aha "nweta"] iwu = fetch
  • A gbanweela ngosipụta nke mbinye aka ndị igodo GPG ha gwụchara mana ha dị irè n'oge a bịanyere aka na nkwekọrịta ahụ. A na-egosi mbinye aka ndị a ugbu a dị ka ndị ziri ezi yana ihe edeturu gbasara njedebe igodo ahụ (na mbụ, a na-egosi ha na uhie, na-enye echiche na ha adịghị mma).
  • Mgbe ị na-abanye na ebe nchekwa site na HTTP, a na-ejikwa koodu njehie 429 (Arịrịọ dị ukwuu) nke ọma ugbu a. A naghịzi ewere arịrịọ ndị na-ada ada na njehie a dị ka ihe na-egbu egbu, kama dị ka njehie nwa oge nke a ga-anwale ọrụ ahụ ọzọ mgbe oge ụfọdụ gasịrị. A na-eji nhọrọ "http.retryAfter" ahazi oge nkwụsịtụ ọzọ, ọnụọgụ nke nnwale ndị ọzọ bụ "http.maxRetries," na oge njedebe bụ "http.maxRetryTime."

isi: opennet.ru

Zụta nnabata ntụkwasị obi maka saịtị nwere nchekwa DDoS, sava VPS VDS 🔥 Zụta ebe nrụọrụ weebụ a pụrụ ịtụkwasị obi na nchekwa DDoS, sava VPS VDS | ProHoster