Jak používat Git Log k formátování historie potvrzení?



Git je nástroj, který pomáhá organizovat a spravovat zdrojový kód vašich aplikací. Naučte se vše o příkazu historie historie formátu git log a o tom, jak jej používat.

V tomto článku probereme některé pokročilé možnosti formátování a tisku protokolů potvrzení, aby se z historie deníku projektu načetly potřebné informace. Protože už víme, vede deník změn provedených v historii projektu, nyní prozkoumáme další způsoby, jak je užitečný příkaz „git log“.

Nejprve přepínám / kontroluji větev „feature1“ pro pohodlnou a kratší historii.
Použijte příkazy -





$cd myProj–Přepněte na projekt git

$funkce git checkout1–Jděte do větve ‘feature1’



1. Potvrďte formátování

1.1 Docela vytisknout výstupní obsah v daném formátu

Syntax: git log --pretty [=]

kde, může být jedním z jeden řádek, krátký, střední, úplný, plnější, e-mailem, drsný, a formát:
Když = část je vynechána, výchozí je střední.

1.1.1 –pretty = oneline

Přihlaste se pěkně do protokolu potvrzení v ‚jednom řádku '
Příkaz: git log --pretty = jeden řádek
Formátuje výstup v pořadí:




Commit - historie formátu protokolu Git - Edureka

1.1.2 - pěkný = krátký

Výstup potvrzení formátu „krátký“ ve formátu:
potvrzení (refname)
Autor:



1.1.3 - hezký = střední

Příkaz: git log --pretty = medium
Výstup potvrzení tisku ve formátu „medium“:
spáchat
Autor :
Datum:


1.1.4 - cena = plná

Příkaz: git log --pretty = plný
Výstup je ve formátu:
potvrzení (refname)
Autor:
Spáchat:


1.1.5 –pretty = plnější

Příkaz: git log --pretty = plnější
potvrzení (refname)
Autor:
Datum autora :
Spáchat:
CommitDate:


1.1.6 –pretty = e-mail

Příkaz: git log --pretty = e-mail
Vytisknout výstup protokolu ve formátu e-mailového stylu:
Z
Z:
Datum:
Předmět: [NÁPLAST]


1.1.7 –pretty = raw

Příkaz: git log --pretty = raw
Nezpracovaný výstupní formát protokolu zobrazuje celé potvrzení přesně tak, jak je uloženo v objektu potvrzení.
spáchat
strom
rodič
autor
spáchat

1.1.8 –formát:: Vlastní formátování

Formát umožňuje určit, které informace o objektu potvrzení chcete vytisknout ve výstupním protokolu potvrzení
Zvažme různé zástupné symboly, které tato možnost poskytuje stejně jako funkce „C printf“ pomocí fragmentů kódu:

Příkaz: git log --pretty = formát: '% h% reklama | % s% d [% an] '- datum = krátké
Výstupní formát:
| [jméno autora]

% h = Zkrácená ID hash-id / sha1commit
% H = dlouhá ID sha-1
%na = autorské datum
% s = odevzdat titulní řádek předmětu
% d = názvy referenčních ukazatelů (větev, značka)
% an = jméno autora
-datum = short: Tiskne pouze datum a ne čas v čitelném formátu

A co takhle udělat tento výstup lidštějším pomocí barev.
Příkaz:
git log --pretty = formát: '% C (žlutá)% h% Creset% reklama | % Cgreen% s% Creset% Cred% d% Creset% Cblue [% an] '--datum = krátké


Některé další zástupné symboly použité ve výše uvedeném fragmentu kódu jsou:
% C (žlutá) : Otočte následující řetězec na žlutou
% Creset : Resetuje následující řetězec zpět na výchozí (bílou) barvu
% Cgreen : změňte následující řetězec na zelenou
%Hádám: Změňte následující řetězec na červenou
% Cblue: Vytvořte jméno autora modrou barvou

Nemusíte si pamatovat a pokaždé napsat celý příkaz, stačí použít krátké jméno jako git alias Jak je ukázáno níže:
Příkaz:
git config --global alias.c-hist 'log --pretty = formát:'% C (žlutý)% h% Creset% ad | % Cgreen% s% Creset% Cred% d% Creset% Cblue [% an] '--date = short'

„C-hist“ představuje C ustomized- hist ory
Takže, jak byste si všimli, nastavuji svůj globální konfigurace git soubor s hodnotami.

číst a psát soubor Excel v Javě

Chcete-li zkontrolovat historii aktuální větve, stačí spustit příkaz, například takto:
Příkaz: jdi c-hist

1.2 –abbrev-commit: Zkrátit git commit hash-id

Příkaz: git log --abbrev-commit
Celý 40bajtový hexadecimální název objektu potvrzení je zkrácen na výchozí 7 bajtů.


Pojďme to spojit s- online„Možnost pohodlného zobrazení, například:
Příkaz: git log --abbrev-commit --oneline

Zajímavější je, že můžete také zadat délku bajtu ID sha-1 pomocí možnosti „–abbrev =“, jak je uvedeno níže:
Příkaz: git log --abbrev-commit --abbrev = 5 - online



Je zřejmé, že zvýrazněná ID sha-1 jsou zmenšena na velikost 5 bajtů.

1.3 –nebbrev-commit

Zobrazit celý 40bajtový hexadecimální název objektu potvrzení.
To popírá –Abbrev-commit a ty možnosti, které z toho vyplývají
například „–oneline“.
Příkaz: git log --pretty = oneline --no-abbrev-commit



1.4 - relativní datum

Příkaz: git log --relative-date

Upozorňujeme, že tento zvýrazněný čas se může změnit s ohledem na čas, kdy ve svém systému provedete příkaz.

1,5 –datum =

Datum protokolu potvrzení můžete také naformátovat v kterékoli z následujících možností formátu:

1.5.1 –datum = relativní

Příkaz :git log --date = relativní
Toto je synonymum pro výše uvedený příkaz „git log --relative-date“A vytiskne stejné potvrzení.

1.5.2 - datum = místní

Příkaz : git log --date = local

1.5.3 –datum = iso

Příkaz: git log --date = iso

1.5.4 –date = iso-strict

Příkaz: git log --date = iso-strict

1.5.5 - datum = rfc

Příkaz: git log --date = rfc

1.5.6 - datum = krátké

Příkaz: git log --date = short

1.5.7 –datum = raw (zobrazuje datum v sekundách)

Příkaz: git log --date = raw
Vytiskněte čas jako sekundy od unix epoc čas (1. ledna 1970) následovaný časovým pásmem.

1.5.8 - datum = člověk

Příkaz: git log --date = člověk

1.5.9 - datum = unix

Zobrazuje datum jako unix epoc (UTC) čas.
Příkaz: git log --date = unix

1,6 - rodiče

Vytiskněte také rodiče každého potvrzení ve formátu:
Příkaz: git log - rodiče
Příkaz výstupu Oneliner: git log --parents --oneline

Je třeba poznamenat:
C366419 je sloučení, proto má 2 rodiče: feeb30c a 4920adc
Rovněž

1d67b50 je sloučení, které bylo výsledkem sloučení f2ff2e4 a abb694b
078f9f5 je slučovací potvrzení vytvořené sloučením 9a2412e a ab3a5e5
Zatímco, 86792c6 je počáteční potvrzení, tedy žádný rodič.

1,7 - děti

Vytiskněte také děti ve formuláři
Příkaz: git log - děti - online

Poznámka :
006b9ce je nejnovější potvrzení, proto ještě nemá žádné objekty potvrzení dětí. Další změnou, kterou v této větvi provedete a potvrdíte, bude podřízený objekt potvrzení tohoto nejnovějšího ID sha-1.

1,8 –graf

Nakreslete textové grafické znázornění historie potvrzení před ID sha-1.
Příkaz: git log --graf
Vylepšený výstup jedné linky: git log --graph --oneline


To vám umožní pochopit, kdy, jak a proč a další větve byly sloučeny do aktuálně rezervované větve.

1.9 –zobrazit lineární zlom

Příkaz: git log --show-linear-break
Toto je užitečný příkaz k označení bariéry mezi 2 po sobě jdoucími revizemi, které nepatří k lineární větvi, jinými slovy k revizím, které pocházejí z různých větví.


Porovnejte výše uvedený výstup s výstupem příkazu „git log –graph“, který jasně ukazuje, jak byly sloučeny „lineární zlomy“.

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

git shortlog„Příkaz kategorizuje autora protokolů odevzdání a vytiskne souhrnný přehled s uvedením závazků provedených každým autorem.
Příkaz: git log shortlog

Příkaz : git log shortlog -s
-s znamená –summary, potlačit popis potvrzení a jen vytisknout počet potvrzení každého autora, například:

Kromě toho můžete výstup také formátovat pomocí stejných zástupných symbolů, jaké jsou popsány v části „--pretty = formát„Možnost
Zkuste příkaz: git shortlog --format = '% h | % s '

Proto budete souhlasit, že tento výstup dává větší smysl, protože zobrazuje id a pro každého autora spolu s celkovým počtem závazků.

Poznámka : Je zajímavé si všimnout, že můžete snadno najít větev, která provedla konkrétní potvrzení. Stojí za to věnovat se této diskusi v nadcházejících článcích do hloubky.

S tím tedy skončímeHistorie formátu protokolu Gitblog, doufám, že vám to připadalo poučné.

V tomto příspěvku jsme se naučili některé techniky formátování, které tisknou informace o projektu přizpůsobenějším a uživatelsky přívětivějším způsobem. Nyní byste měli vědět, jak efektivně využít parametry příkazu „git log“ k vytažení veškerých informací, které potřebujete o zdrojovém kódu, z vaší potvrzené historie. Takže s tím se dostáváme ke konci tohoto článku, doufám, že vám připadal poučný.

Pokud se chcete dozvědět více, můžete se podívat na toto Edureka, důvěryhodná online vzdělávací společnost se sítí více než 250 000 spokojených studentů po celém světě. Kurz Certifikace Edureka DevOps pomáhá studentům pochopit, co je DevOps, a získat odborné znalosti v různých procesech a nástrojích DevOps, jako jsou Puppet, Jenkins, Nagios, Ansible, Chef, Saltstack a GIT pro automatizaci více kroků v SDLC.

Máte na nás dotaz? Uveďte to v sekci komentářů tohoto článku v části „Historie formátu protokolu Git“ a my se vám ozveme.