Výhodou systému správy verzií je, že zaznamenáva zmeny. Tieto záznamy nám umožňujú získavať údaje, ako sú commity, zisťovanie chýb, aktualizácie. Ale celá táto história bude zbytočná, ak sa v nej nebudeme vedieť orientovať. V tomto bode potrebujeme príkaz git log.
Git log je pomocný nástroj na kontrolu a čítanie histórie všetkého, čo sa deje s úložiskom. S protokolom git je možné použiť viacero možností, aby bola história špecifickejšia.
Vo všeobecnosti je git log záznamom odovzdaní. Git log obsahuje nasledujúce údaje:
Ako ukončiť príkaz git log?
Môže nastať situácia, že spustíte príkaz git log a zostanete tam. Chcete písať alebo sa vrátiť na bash, ale nemôžete. Keď kliknete na Zadajte , bude vás navigovať k staršiemu príkazu až po koncový príznak.
Riešením tohto problému je stlačte tlačidlo na q (Q pre ukončenie) . Opustí vás zo situácie a vráti vás do príkazového riadku. Teraz môžete vykonať ktorýkoľvek z príkazov.
Základný denník Git
Príkaz Git log je jedným z najbežnejších príkazov git. Je to najužitočnejší príkaz pre Git. Zakaždým, keď potrebujete skontrolovať históriu, musíte použiť príkaz git log. Základný príkaz git log zobrazí najnovšie odovzdania a stav hlavy. Použije sa ako:
$ git log
Vyššie uvedený príkaz zobrazí posledné odovzdania. Zvážte nasledujúci výstup:
Vyššie uvedený príkaz obsahuje zoznam všetkých posledných odovzdaní. Každý commit obsahuje nejaké jedinečné sha-id, ktoré generuje algoritmus SHA. Obsahuje tiež dátum, čas, autora a niektoré ďalšie podrobnosti.
Na príkazovom riadku môžeme vykonať nejakú akciu, ako je rolovanie, skákanie, pohyb a ukončenie. Ak chcete rolovať na príkazovom riadku, stlačte k pre pohyb nahor, j na pohyb nadol, medzerník na rolovanie nadol o celú stranu na rolovanie nahor o stránku a q na ukončenie príkazového riadka.
<Git Log Oneline
Voľba oneline sa používa na zobrazenie výstupu ako jedného odovzdania na riadok. Zobrazuje tiež výstup v skratke, ako je prvých sedem znakov SHA odovzdania a správa odovzdania.
Bude sa používať nasledovne:
$ git log --oneline
Takže zvyčajne môžeme povedať, že príznak --oneline spôsobí, že sa zobrazí git log:
- jeden záväzok na riadok
- prvých sedem znakov SHA
- správa odovzdania
Zvážte nasledujúci výstup:
Ako môžeme presnejšie vidieť z vyššie uvedeného výstupu, každý commit je uvedený iba v jednom riadku so sedemmiestnym číslom sha a správou commit.
Git Log Stat
Príkaz log zobrazí súbory, ktoré boli zmenené. Zobrazuje tiež počet riadkov a súhrnný riadok celkových záznamov, ktoré boli aktualizované.
Vo všeobecnosti môžeme povedať, že na zobrazenie slúži možnosť stat
dĺžka poľa java
- upravené súbory,
- Počet riadkov, ktoré boli pridané alebo odstránené
- Zmenený súhrnný riadok celkového počtu záznamov
- Riadky, ktoré boli pridané alebo odstránené.
Bude sa používať nasledovne:
$ git log --stat
Vyššie uvedený príkaz zobrazí súbory, ktoré boli zmenené. Zvážte nasledujúci výstup:
Z vyššie uvedeného výstupu môžeme vidieť, že všetky uvedené commity sú modifikáciami v úložisku.
Git log P alebo Patch
Príkaz git log patch zobrazí súbory, ktoré boli upravené. Zobrazuje tiež umiestnenie pridaných, odstránených a aktualizovaných riadkov.
Bude sa používať ako:
$ git log --patch
Alebo
$ git log -p
Vo všeobecnosti môžeme povedať, že príznak --patch sa používa na zobrazenie:
if else príkazy java
- Upravené súbory
- Umiestnenie riadkov, ktoré ste pridali alebo odstránili
- Konkrétne zmeny, ktoré boli vykonané.
Zvážte nasledujúci výstup:
Vyššie uvedený výstup zobrazuje upravené súbory s umiestnením riadkov, ktoré boli pridané alebo odstránené.
Git Log Graph
Príkaz Git log umožňuje zobraziť váš git log ako graf. Ak chcete vypísať odovzdania vo forme grafu, spustite príkaz git log s voľbou --graph. Bude prebiehať nasledovne:
$ git log --graph
Aby bol výstup konkrétnejší, môžete tento príkaz skombinovať s voľbou --oneline. Bude fungovať nasledovne:
$ git log --graph --oneline
Filtrovanie histórie odovzdania
Výstup môžeme filtrovať podľa našich potrieb. Je to jedinečná vlastnosť Gitu. Na výstup môžeme použiť mnoho filtrov, ako je množstvo, dátum, autor a ďalšie. Každý filter má svoje špecifikácie. Môžu byť použité na implementáciu niektorých navigačných operácií na výstupe.
Poďme pochopiť každý z týchto filtrov podrobne.
Podľa sumy:
Môžeme obmedziť počet výstupných potvrdení pomocou príkazu git log. Je to najšpecifickejší príkaz. Tento príkaz odstráni zložitosť, ak máte záujem o menej odovzdaní.
Ak chcete obmedziť výstup protokolu git, vrátane voľby -. Ak chceme len posledné tri odovzdanie, potom môžeme zadať argument -3 v príkaze git log. Zvážte nasledujúci výstup:
Ako vidíme z vyššie uvedeného výstupu, môžeme obmedziť výstup git log.
Podľa dátumu a času:
Výstup môžeme filtrovať podľa dátumu a času. Musíme prejsť --po alebo - predtým argument na určenie dátumu. Oba tieto argumenty akceptujú rôzne formáty dátumu. Bude prebiehať nasledovne:
$ git log --after='yy-mm-dd'
Vyššie uvedený príkaz zobrazí všetky odovzdania vykonané po danom dátume. Zvážte nasledujúci výstup:
Vyššie uvedený príkaz obsahuje zoznam všetkých odovzdaní po '2019-11-01'.
Môžeme tiež odovzdať príslušné referenčné vyhlásenie, ako napríklad „včera“, „pred 1 týždňom“, „pred 21 dňami“ a ďalšie. Pobeží ako:
git log --after='21 days ago'
Vyššie uvedený príkaz zobrazí odovzdania, ktoré boli vykonané pred 21 dňami. Zvážte nasledujúci výstup:
Môžeme tiež sledovať odovzdania medzi dvoma dátumami. Ak chcete sledovať potvrdenia, ktoré boli vytvorené medzi dvoma dátumami, odovzdajte odkaz na príkaz --predtým a --po dátum. Predpokladajme, že chceme sledovať záväzky medzi '2019-11-01' a '2019-11-08'. Príkaz spustíme nasledovne:
$ git log --after='2019-11-01' --before='2019-11-08 '
Vyššie uvedený príkaz zobrazí odovzdania vykonané medzi dátumami. Zvážte nasledujúci výstup:
Vyššie uvedený výstup zobrazuje odovzdania medzi daným obdobím. Môžeme použiť --since a --until namiesto --after a --before. Pretože ide o synonymá, resp.
Autor:
Potvrdenia môžeme filtrovať podľa konkrétneho používateľa. Predpokladajme, že chceme uviesť zoznam odovzdaní vykonaných iba konkrétnym členom tímu. Môžeme použiť príznak -author na filtrovanie odovzdaní podľa mena autora. Tento príkaz používa regulárny výraz a vracia zoznam potvrdení autorov, ktorí zodpovedajú tomuto vzoru. Namiesto vzoru môžete použiť presný názov. Tento príkaz sa spustí nasledovne:
$ git log --author='Author name'
Vyššie uvedený príkaz zobrazí všetky odovzdania vykonané daným autorom. Zvážte nasledujúci výstup:
Z vyššie uvedeného výstupu môžeme vidieť, že všetky commity od autora Som Dwivedi1 sú uvedené.
Namiesto regulárneho výrazu alebo presného názvu môžeme použiť reťazec. Zvážte nasledujúce vyhlásenie:
$ git log --author='Stephen'
Vyššie uvedené vyhlásenie zobrazí všetky odovzdania, ktorých autor obsahuje meno, Stephen. Meno autora sa nemusí presne zhodovať; má len špecifikovanú frázu.
Ako vieme, e-mail autora je tiež spojený s menom autora, takže môžeme použiť e-mail autora ako vzor alebo presné vyhľadávanie. Predpokladajme, že chceme sledovať odovzdania autorov, ktorých e-mailovou službou je google. Na tento účel môžeme použiť zástupné znaky ako „@gmail.com“. Zvážte nasledujúce vyhlásenie:
$ git log -author='@gmail.com'
Vyššie uvedený príkaz zobrazí odovzdania autorov, ako je uvedené vo vzore. Zvážte nasledujúci výstup:
Potvrdením správy:
Filtrovať odovzdania podľa správy odovzdania. Môžeme použiť možnosť grep a bude fungovať ako možnosť autora.
Bude prebiehať nasledovne:
$ git log --grep=' Commit message.'
Namiesto kompletnej správy môžeme použiť krátku formu správy odovzdania. Zvážte výstup uvedený nižšie.
herec zeenat aman
Vyššie uvedený výstup zobrazuje všetky odovzdania, ktoré obsahujú slovo odovzdať v správe odovzdania.
K dispozícii je mnoho ďalších možností filtrovania, napríklad môžeme filtrovať podľa názvu súboru, obsahu a podobne.