Prednost sustava za kontrolu verzija je da bilježi promjene. Ovi zapisi omogućuju nam dohvaćanje podataka poput obveza, otkrivanja grešaka, ažuriranja. Ali, sva će ova povijest biti beskorisna ako ne budemo mogli upravljati njome. U ovom trenutku potrebna nam je naredba git log.
Git log je pomoćni alat za pregled i čitanje povijesti svega što se događa u repozitoriju. Više opcija može se koristiti s git logom kako bi povijest bila specifičnija.
Općenito, git log je zapis obveza. Git log sadrži sljedeće podatke:
Kako izaći iz naredbe git log?
Može se dogoditi situacija da pokrenete naredbu git log i zaglavite tamo. Želite tipkati ili se vratiti na bash, ali ne možete. Kada kliknete na Unesi tipku, vodit će vas do starije naredbe do zastavice za kraj.
Rješenje ovog problema je da pritisnite the q (Q za odustajanje) . Izaći će vas iz situacije i vratiti vas na naredbeni redak. Sada možete izvršiti bilo koju od naredbi.
Osnovni Git dnevnik
Naredba Git log jedna je od najčešćih naredbi gita. To je najkorisnija naredba za Git. Svaki put kada trebate provjeriti povijest, morate koristiti naredbu git log. Osnovna naredba git log prikazat će najnovije predaje i status glave. Koristit će se kao:
$ git log
Gornja naredba prikazat će posljednja predaja. Razmotrite donji izlaz:
Gornja naredba ispisuje sve nedavne predaje. Svaki commit sadrži neki jedinstveni sha-id, koji generira SHA algoritam. Također uključuje datum, vrijeme, autora i neke dodatne pojedinosti.
Možemo izvesti neke radnje poput pomicanja, skakanja, pomicanja i zatvaranja na naredbenom retku. Za pomicanje u naredbenom retku pritisnite k za pomicanje prema gore, j za pomicanje prema dolje, razmaknicu za pomicanje prema dolje za cijelu stranicu za pomicanje prema gore za jednu stranicu i q za izlaz iz naredbenog retka.
<Git Log Oneline
Opcija oneline koristi se za prikaz izlaza kao jedno uvrštavanje po retku. Također prikazuje izlaz ukratko kao što je prvih sedam znakova SHA uvrštenja i poruke uvrštavanja.
Koristit će se na sljedeći način:
$ git log --oneline
Dakle, obično možemo reći da zastavica --oneline uzrokuje prikaz git log-a:
- jedan commit po retku
- prvih sedam znakova SHA
- poruku predaje
Razmotrite donji izlaz:
Kao što možemo točnije vidjeti iz gornjeg izlaza, svaki commit je dan samo u jednom retku sa sedmeroznamenkastim sha brojem i porukom commita.
Git Log Stat
Naredba log prikazuje datoteke koje su izmijenjene. Također prikazuje broj redaka i redak sažetka ukupnih zapisa koji su ažurirani.
Općenito, možemo reći da se opcija stat koristi za prikaz
zeenat aman glumac
- modificirane datoteke,
- Broj redaka koji su dodani ili uklonjeni
- Redak sažetka ukupnog broja promijenjenih zapisa
- Linije koje su dodane ili uklonjene.
Koristit će se na sljedeći način:
$ git log --stat
Gornja naredba prikazat će datoteke koje su izmijenjene. Razmotrite donji izlaz:
Iz gornjeg izlaza možemo vidjeti da su sve navedene obveze modifikacije u spremištu.
Git log P ili Patch
Naredba git log patch prikazuje datoteke koje su izmijenjene. Također prikazuje lokaciju dodanih, uklonjenih i ažuriranih linija.
Koristit će se kao:
$ git log --patch
Ili
$ git log -p
Općenito, možemo reći da se zastavica --patch koristi za prikaz:
- Izmijenjene datoteke
- Lokacija linija koje ste dodali ili uklonili
- Konkretne izmjene koje su napravljene.
Razmotrite donji izlaz:
Gornji izlaz prikazuje modificirane datoteke s lokacijom redaka koji su dodani ili uklonjeni.
Git Log Graf
Git log naredba omogućuje pregled git log-a kao grafikona. Za popis predaja u obliku grafikona, pokrenite naredbu git log s opcijom --graph. Provodit će se na sljedeći način:
$ git log --graph
Kako bi izlaz bio specifičniji, možete kombinirati ovu naredbu s opcijom --oneline. Djelovat će na sljedeći način:
$ git log --graph --oneline
Filtriranje povijesti predaje
Možemo filtrirati izlaz prema našim potrebama. To je jedinstvena značajka Gita. Na ispis možemo primijeniti mnoge filtre kao što su iznos, datum, autor i drugo. Svaki filter ima svoje specifikacije. Mogu se koristiti za implementaciju nekih navigacijskih operacija na izlazu.
Hajdemo detaljnije razumjeti svaki od ovih filtara.
Po iznosu:
Možemo ograničiti broj izlaznih obveza pomoću naredbe git log. To je najspecifičnija naredba. Ova naredba će ukloniti složenost ako ste zainteresirani za manje obveza.
Za ograničavanje izlaza git loga, uključujući opciju -. Ako želimo samo posljednja tri komitiranja, tada možemo proslijediti argument -3 u naredbi git log. Razmotrite donji izlaz:
Kao što možemo vidjeti iz gornjeg izlaza, možemo ograničiti izlaz git log-a.
Po datumu i vremenu:
Izlaz možemo filtrirati prema datumu i vremenu. Moramo proći --nakon ili -prije argument za određivanje datuma. Oba argumenta prihvaćaju različite formate datuma. Provodit će se na sljedeći način:
apurva padgaonkar
$ git log --after='yy-mm-dd'
Gornja naredba prikazat će sve obveze izvršene nakon zadanog datuma. Razmotrite donji izlaz:
Gornja naredba ispisuje sve obveze nakon '2019-11-01'.
Također možemo prenijeti primjenjivi referentni iskaz kao što je 'jučer', 'prije 1 tjedan', 'prije 21 dan' i više. Radit će kao:
git log --after='21 days ago'
Gornja naredba će prikazati predaje koje su napravljene prije 21 dan. Razmotrite donji izlaz:
Također možemo pratiti predaje između dva datuma. Za praćenje obveza koje su stvorene između dva datuma, proslijedite referencu izjave --prije i --nakon Datum. Pretpostavimo da želimo pratiti predaje između '2019-11-01' i '2019-11-08'. Naredbu ćemo izvesti na sljedeći način:
$ git log --after='2019-11-01' --before='2019-11-08 '
Gornja naredba prikazat će obveze napravljene između datuma. Razmotrite donji izlaz:
Gornji izlaz prikazuje obveze između zadanog razdoblja. Možemo koristiti --since i --until umjesto --after i --before. Jer oni su sinonimi, odnosno.
Po autoru:
Možemo filtrirati predaje prema određenom korisniku. Pretpostavimo da želimo ispisati predaje koje je izvršio samo određeni član tima. Možemo koristiti zastavu -author za filtriranje obveza prema imenu autora. Ova naredba uzima regularni izraz i vraća popis obveza koje su napravili autori koji odgovaraju tom uzorku. Umjesto uzorka možete koristiti točan naziv. Ova naredba će se izvoditi na sljedeći način:
$ git log --author='Author name'
Gornja naredba prikazat će sve obveze koje je dani autor napravio. Razmotrite donji izlaz:
Iz gornjeg izlaza možemo vidjeti da su sva obećanja autora Ja sam Dwivedi1 su navedeni.
Možemo koristiti niz umjesto regularnog izraza ili točnog imena. Razmotrite izjavu u nastavku:
$ git log --author='Stephen'
Gornja izjava prikazat će sve obveze čiji autor uključuje ime Stephen. Ime autora ne mora se točno podudarati; ima samo navedeni izraz.
java učiniti dok
Kao što znamo, autorova e-pošta također je uključena u ime autora, tako da možemo koristiti autorovu e-poštu kao uzorak ili točnu pretragu. Pretpostavimo da želimo pratiti predaje autora čija je usluga e-pošte google. Da bismo to učinili, možemo koristiti zamjenske znakove kao '@gmail.com'. Razmotrite izjavu u nastavku:
$ git log -author='@gmail.com'
Gornja naredba će prikazati predaje po autorima kako je navedeno u uzorku. Razmotrite donji izlaz:
Putem poruke o uvrštavanju:
Za filtriranje obveza prema poruci predaje. Možemo koristiti grep opciju, i ona će raditi kao autorska opcija.
Provodit će se na sljedeći način:
$ git log --grep=' Commit message.'
Možemo koristiti kratki oblik poruke predaje umjesto cijele poruke. Razmotrite donji izlaz.
Gornji izlaz prikazuje sve predaje koje sadrže riječ commit u svojoj poruci predaje.
Dostupne su mnoge druge opcije filtriranja, poput filtriranja prema nazivu datoteke, sadržaju itd.