Ako používať Git Log na formátovanie histórie potvrdenia?



Git je nástroj, ktorý pomáha organizovať a spravovať zdrojový kód vašich aplikácií. Naučte sa všetko o príkaze histórie formátu git log a o tom, ako ho používať.

V tomto článku sa budeme zaoberať niektorými pokročilými možnosťami formátovania a tlače protokolov potvrdenia na získanie potrebných informácií z histórie denníka projektu. Pretože už vieme, vedie Denník zmien vykonaných v histórii projektu, teraz preskúmame ďalšie spôsoby, ako je užitočný príkaz „git log“.

Najskôr prepínam / odhlasujem vetvu „feature1“ kvôli pohodlnej a kratšej histórii.
Použite príkazy -





$cd myProj–Prepnite na projekt git

$funkcia git checkout1–Prejdite na vetvu ‘feature1’



1. Potvrďte formátovanie

1.1 Pekne vytlačiť výstupný obsah v danom formáte

Syntax: git log --pretty [=]

kde, môže byť jedným z jedna čiara, krátky, stredná, plný, plnšie, e-mail, surovýa formát:
Kedy = časť je vynechaná, predvolená hodnota je stredná.

1.1.1 - pekné = jeden riadok

Protokol potvrdenia peknej tlače v „jednom riadku“
Príkaz: git log --pretty = jeden riadok
Naformátuje výstup postupne:




Commit - história formátu protokolu Git - Edureka

1.1.2 - pekné = krátke

Výstup potvrdenia formátu „krátky“ vo formáte:
potvrdiť (refname)
Autor:



1.1.3 - pekný = stredný

Príkaz: git log --pretty = medium
Výstup potvrdenia tlače vo „strednom“ formáte:
spáchať
Autor :
Dátum:


1.1.4 - pekný = plný

Príkaz: git log --pretty = plný
Výstup je vo formáte:
potvrdiť (refname)
Autor:
Odovzdať:


1.1.5 - pekný = plnší

Príkaz: git log --pretty = plnší
potvrdiť (refname)
Autor:
AuthorDate :
Odovzdať:
CommitDate:


1.1.6 –pretty = e-mail

Príkaz: git log --pretty = e-mail
Tlačiť výstup protokolu vo formáte e-mailu:
Od
Od:
Dátum:
Predmet: [PATCH]


1.1.7 - pekný = surový

Príkaz: git log --pretty = raw
Surový výstupný formát denníka zobrazuje celé potvrdenie presne tak, ako je uložené v objekte potvrdenia.
spáchať
strom
rodič
autor
spáchať

1.1.8 –formát:: Vlastné formátovanie

Formát vám umožňuje určiť, ktoré informácie o objekte odovzdania chcete vytlačiť vo výstupnom denníku potvrdenia
Uvažujme o rôznych zástupných znakoch, ktoré táto možnosť poskytuje rovnako ako funkcia „C printf“ pomocou útržkov kódu:

Príkaz: git log --pretty = formát: '% h% reklama | % s% d [% an] '--dátum = krátke
Výstupný formát:
| [meno autora]

% h = Skrátené ID hash-id / sha1commit
% H = dlhé identifikátory sha-1
% až = dátum autorstva
% s = potvrdiť predmetový riadok
% d = referenčné názvy ukazovateľov (vetvy, značky)
% an = meno autora
-dátum = short: Vytlačí iba dátum a nie čas v čitateľnom formáte

A čo tak urobiť tento výstup príjemnejším pre človeka pomocou farieb.
Príkaz:
git log --pretty = formát: '% C (žltý)% h% Creset% reklama | % Cgreen% s% Creset% Cred% d% Creset% Cblue [% an] '--date = krátke


Niektoré ďalšie zástupné symboly použité vo vyššie uvedenom útržku kódu sú:
% C (žltá) : Nasledujúci reťazec otočte na žlto
% Creset : Obnovte nasledujúci reťazec na predvolenú (bielu) farbu
% Zelených : zmeniť nasledujúci reťazec na zelenú
%Hádam: Zmeňte nasledujúci reťazec na červenú
% Cblue: Vytvorte meno autora modrou farbou

Nemusíte si pamätať a zakaždým napísať celý príkaz, stačí použiť krátke meno ako git alias ako je ukázané nižšie:
Príkaz:
git config --global alias.c-hist 'log --pretty = formát:'% C (žltý)% h% Creset% ad | % Cgreen% s% Creset% Cred% d% Creset% Cblue [% an] '--date = short'

„C-hist“ predstavuje c ustomized- hist ory
Takže, ako by ste videli, nastavujem svoj globálny rozmer konfigurácia git súbor s hodnotami.

podreťazec v príkladoch servera sql

Teraz, aby ste skontrolovali históriu aktuálnej vetvy, stačí spustiť príkaz, napríklad takto:
Príkaz: choď c-hist

1.2 –abbrev-commit: Skráťte git commit hash-id

Príkaz: git log --abbrev-commit
Celý 40-bajtový hexadecimálny názov objektu potvrdenia sa skráti na predvolených 7-bajtov.


Spojme to s ‘--jedna čiara„Možnosť pohodlného zobrazenia, napríklad:
Príkaz: git log --abbrev-commit --oneline

Oveľa vzrušujúcejšie je, že dĺžku bajtov identifikátorov sha-1 môžete určiť aj pomocou možnosti „–abbrev =“, ako je uvedené nižšie:
Príkaz: git log --abbrev-commit --abbrev = 5 - online



Je zrejmé, že zvýraznené identifikátory sha-1 sú zmenšené na veľkosť 5 bajtov.

1.3 –ne-abbrev-commit

Zobraziť úplný 40-bajtový hexadecimálny názov objektu potvrdenia.
To neguje –Breverzovať a možnosti, ktoré z nich vyplývajú
napríklad „–oneline“.
Príkaz: git log --pretty = jeden riadok --no-abbrev-commit



1,4 - relatívny dátum

Príkaz: git log - relatívny dátum

Upozorňujeme, že tento zvýraznený čas sa môže meniť s ohľadom na čas, kedy vo svojom systéme vykonáte príkaz.

1,5 –dátum =

Dátum protokolov potvrdenia môžete tiež naformátovať v ktorejkoľvek z nasledujúcich možností formátu:

1.5.1 - dátum = relatívny

Velenie :git log --date = relatívny
Toto je synonymum vyššie uvedeného príkazu „git log - relatívny dátum”A vytlačí rovnaké potvrdenia.

1.5.2 - dátum = miestne

Velenie : git log --date = local

1.5.3 - dátum = izo

Príkaz: git log --date = iso

1.5.4 –date = iso-strict

Príkaz: git log --date = iso-strict

1.5.5 - dátum = rfc

Príkaz: git log --date = rfc

1.5.6 –dátum = krátke

Príkaz: git log --date = krátke

1.5.7 –date = raw (zobrazuje dátum v sekundách)

Príkaz: git log --date = raw
Vytlačte čas ako sekundy od unix epoc času (1. januára 1970), za ktorým nasleduje časové pásmo.

1.5.8 - dátum = človek

Príkaz: git log --date = človek

1.5.9 - dátum = unix

Zobrazí dátum ako unix epoc (UTC) čas.
Príkaz: git log --date = unix

1,6 - rodičia

Vytlačte tiež rodičov každého potvrdenia vo formáte:
Príkaz: git log - rodičia
Príkaz výstupu Oneliner: git log --parents --online

Je potrebné poznamenať:
C366419 je zlúčením, má teda 2 rodičov: feeb30c a 4920adc
Rovnako tak

1d67b50 je zlúčenie, ktoré bolo výsledkom zlúčenia f2ff2e4 a abb694b
078f9f5 je zlučovacia väzba vytvorená zlúčením 9a2412e a ab3a5e5
Keďže 86792c6 je počiatočné potvrdenie, teda žiadny rodič.

1,7 –deti

Vytlačte do formulára aj deti
Príkaz: git log - deti - online

Poznámka :
006b9ce je posledný príkaz na potvrdenie, a preto zatiaľ nemá žiadny objekt zadania pre deti. Ďalšia zmena, ktorú v tejto vetve vykonáte a zaviažete, bude podradený objekt potvrdenia tohto najnovšieho ID sha-1.

1,8 –graf

Nakreslite textové grafické znázornenie histórie potvrdenia pred identifikátormi sha-1.
Príkaz: git log --graf
Vylepšený výstup jednej linky: git log --graf --oneline


To vám umožní pochopiť, kedy, ako a prečo a ďalšie pobočky boli zlúčené do momentálne odhlásenej pobočky.

1,9 - ukážka-lineárny zlom

Príkaz: git log --show-linear-break
Toto je užitočný príkaz na označenie bariéry medzi 2 po sebe nasledujúcimi potvrdeniami, ktoré nepatria do lineárnej vetvy, inými slovami potvrdenia, ktoré pochádzajú z rôznych vetiev.


Porovnajte vyššie uvedený výstup s výstupom príkazu „git log –graph“, ktorý jasne ukazuje, ako boli zlúčené potvrdenia „linear-break“.

Bonus: Zhrňte výstup protokolu git: „git shortlog“

git shortlog„Príkaz kategorizuje autora protokolov o potvrdení a vytlačí prehľadné zhrnutie s uvedením záväzkov vykonaných každým autorom.
Príkaz: git log shortlog

Velenie : git log shortlog -s
-s je skratka –summary, potlačiť popis potvrdenia a iba vytlačiť počet potvrdení od každého autora, napríklad takto:

Ďalej by ste mohli výstup naformátovať aj pomocou rovnakých zástupných znakov, aké sú uvedené v časti „--pretty = formát„Možnosť
Vyskúšajte príkaz: git shortlog --format = '% h | % s

Preto budete súhlasiť, že tento výstup má väčší zmysel, pretože zobrazuje ID a pre každého autora spolu s celkovým počtom záväzkov.

Poznámka : Je zaujímavé, že pobočku, ktorá vykonala určitý záväzok, nájdete veľmi ľahko. Je vhodné sa tejto diskusii venovať v nasledujúcich článkoch do hĺbky.

S týmto teda skončímeHistória formátu protokolu Gitblog, dúfam, že vás informačný.

V tomto príspevku sme sa naučili niektoré techniky formátovania, ktoré tlačia informácie o projekte prispôsobenejším a užívateľsky príjemnejším spôsobom. Teraz by ste mali vedieť, ako efektívne využiť parametre príkazu „git log“ na získanie všetkých potrebných informácií o zdrojovom kóde z vašej potvrdenej histórie. Týmto teda prichádzame na koniec tohto článku, dúfam, že ste ho našli poučný.

Ak sa chcete dozvedieť viac, môžete si to pozrieť autor: Edureka, dôveryhodná online vzdelávacia spoločnosť so sieťou viac ako 250 000 spokojných študentov rozmiestnených po celom svete. Kurz certifikácie EdOkaka DevOps Certification Training pomáha študentom pochopiť, čo je DevOps, a získať odborné znalosti v rôznych procesoch a nástrojoch DevOps, ako sú Puppet, Jenkins, Nagios, Ansible, Chef, Saltstack a GIT na automatizáciu viacerých krokov v SDLC.

Máte na nás otázku? Uveďte to v časti komentárov tohto článku v časti „História formátu protokolu Git“ a my sa vám ozveme.