V tem članku bomo razpravljali o nekaterih naprednih možnostih za formatiranje in tiskanje dnevnikov odobritev, da iz zgodovine dnevnika projekta pridobimo informacije, ki jih potrebujete. Ker že vemo, vodi dnevnik sprememb, vezanih na zgodovino projekta, zdaj bomo raziskali več načinov, kako je ukaz 'git log' koristen.
Najprej preklapljam / preverjam vejo “feature1” za priročno in krajšo zgodovino.
Uporabite ukaze -
$cd myProj
–Preklopite na projekt git
$funkcija git checkout1
–Skok na vejo ‘feature1’
1. Oblikovanje odobritve
1.1 Natisnite izhodne vsebine v določeni obliki
Sintaksa: git log --pretty [=]
kje, je lahko eden od eno vrstico, kratek, srednje, poln, polnejši, E-naslov, surov, in format:
Kdaj = del je izpuščen, privzeto je srednje.
1.1.1 –pretty = ena vrstica
Precej natisni dnevnik predaj v 'eno vrstico'
Ukaz: git log --pretty = ena vrstica
Izhod formatira v zaporedju:
1.1.2 –pretty = kratek
Izhod obveze formata 'kratek' v obliki:
zaveži (preimenuj)
Avtor:
1.1.3 - lepo = srednje
Ukaz: git log --pretty = medium
Natisni izpis objave v 'srednji' obliki:
zavezati
Avtor :
Datum:
1.1.4 - lepo = polno
Ukaz: git log --pretty = poln
Izhod je v obliki:
zaveži (preimenuj)
Avtor:
Zaveži:
1.1.5 - lepo = bolj polno
Ukaz: git log --pretty = polnejši
zaveži (preimenuj)
Avtor:
Datum avtorja :
Zaveži:
Datum objave:
1.1.6 –pretty = e-pošta
Ukaz: git log --pretty = e-pošta
Natisnite izpise dnevnika v obliki sloga e-pošte:
Od
Od:
Datum:
Zadeva: [PATCH]
1.1.7 - lepo = surovo
Ukaz: git log --pretty = raw
Neobdelani izhodni zapis dnevnika prikazuje celotno objavo natančno tako, kot je shranjena v objektu predaje.
zavezati
drevo
starš
avtor
zavezati
1.1.8 –format:: Oblikovanje po meri
Oblika vam omogoča, da določite, katere podatke predmeta predaja želite natisniti v izhodni dnevnik predavanja
Upoštevajmo različne ogradne znake, ki jih ta možnost ponuja podobno kot funkcija 'C printf' s pomočjo odrezkov kode:
Ukaz: git log --pretty = format: '% h% ad | % s% d [% an] '--date = kratek
Izhodna oblika:
| [ime avtorja]
% h = Skrajšani ID-ji hash-id / sha1commit
% H = dolgi ID-ji sha-1
% do = datum avtorja
% s = zaveži naslovno vrstico predmeta
% d = imena referenčnega kazalca (veje, oznake)
% an = ime avtorja
–Datum = kratko: natisnite samo datum in ne čas v berljivi obliki
Zdaj pa, kako narediti ta izhod bolj prijazen do ljudi z uporabo barv.
Ukaz:
git log --pretty = format: '% C (rumeno)% h% Creset% ad | % Cgreen% s% Creset% Cred% d% Creset% Cblue [% an] '--date = kratek
Nekatera druga ograda, uporabljena v zgornjem delčku kode, so:
% C (rumeno) : Naslednji niz obrnite v rumeno
% Krezet : Ponastavite naslednji niz nazaj na privzeto (belo) barvo
% Zelene : spremenite naslednji niz v zeleno
%Ugibam: Spremenite naslednji niz v rdeč
% Modre: Ime avtorja naj bo modre barve
Ni vam treba vsakič zapomniti in napisati celotnega ukaza, samo uporabite kratko ime kot git vzdevek kot je prikazano spodaj:
Ukaz:
git config --global alias.c-hist 'log --pretty = format:'% C (rumeno)% h% Creset% ad | % Cgreen% s% Creset% Cred% d% Creset% Cblue [% an] '--date = short'
'C-hist' predstavlja c prilagojen- zgodovina ory
Kot ste opazili, postavljam svojo globalno git konfiguracija datoteka z vrednostmi.
if v poizvedbi sql
Zdaj, če želite preveriti zgodovino trenutne veje, morate le zagnati ukaz, takole:
Ukaz: pojdi c-hist
1.2 –abbrev-commit: Skrajšaj git commit hash-id
Ukaz: git log --abbrev-commit
Polno 40-bajtno šestnajstiško ime predmeta predaje je skrajšano na privzetih 7-bajtov.
Naj se udružimo z--oneline
'Možnost za priročen pogled, na primer tako:
Ukaz: git log --abbrev-commit --oneline
Še bolj razburljivo je, da lahko določite tudi dolžino bajta id-sha-1 z uporabo možnosti – –abbrev =, kot je prikazano spodaj:
Ukaz: git log --abbrev-commit --abbrev = 5 --oneline
Jasno je, da so označeni ID-ji sha-1 zmanjšani na 5-bajtno velikost.
1.3 - brez okrajšave
Pokažite celotno 40-bajtno šestnajstiško ime predmeta predaje.
To zanika –Abbrev-commit in tiste možnosti, ki pomenijokot '–oneline'.
Ukaz: git log --pretty = ena vrstica --no-shorv-commit
1.4 –razmerni datum
Ukaz: git log - relativni datum
Prosimo, upoštevajte, da se ta označeni čas lahko spremeni glede na čas, ko v sistemu izvajate ukaz.
1,5 –datum =
Datum dnevnikov zapisov lahko formatirate tudi v kateri koli od naslednjih možnosti formatiranja:
1.5.1 –datum = relativno
Ukaz :git log --date = relativno
To je sinonim za zgornji ukaz “git log - relativni datum
'In natisne iste zaveze.
1.5.2 –dat = lokalni
Ukaz : git log --date = lokalno
1.5.3 –dat = izo
Ukaz: git log --date = iso
1.5.4 –datum = izostrogo
Ukaz: git log --date = izostrog
1.5.5 –datum = rfc
Ukaz: git log --date = rfc
1.5.6 –datum = kratek
Ukaz: git log --date = kratek
1.5.7 –dat = neobdelano (prikaže datum v sekundah)
Ukaz: git log --date = surov
Natisnite čas v sekundah od unix epoc čas (1. januar 1970), ki mu sledi časovni pas.
1.5.8 - datum = človek
Ukaz: git log --date = človek
1.5.9 - datum = unix
Datum prikaže kot unix epoc (UTC) čas.
Ukaz: git log --date = unix
1.6 - starši
Natisnite tudi starše vsake zaveze v obliki:
Ukaz: git log --parents
Izhodni ukaz Oneliner: git log --parents --oneline
Točke, ki jih je treba upoštevati:
C366419 je združitev, zato ima 2 starša: honorar30c in 4920adc
Prav tako
1d67b50 je obveznost združitve, ki je nastala zaradi združitve f2ff2e4 in abb694b
078f9f5 je obveznost združitve, ustvarjena z združevanjem 9a2412e in ab3a5e5
Ker 86792c6 je začetna obveznost, torej noben od staršev.
1,7 - otroci
Otroke natisnite tudi v obrazec
Ukaz: git log --children --oneline
Opomba :
006b9ce je najnovejša odobritev, zato še ni predmetov za zavezovanje otrok. Naslednja sprememba, ki jo naredite in sprejmete v tej veji, bo objekt podrejene podrejenosti tega najnovejšega id-sha-1.
1,8 –graf
Pred identifikacijskimi kodami sha-1 narišite grafično predstavitev zgodovine odobritev na osnovi besedila.
Ukaz: git log --graph
Izboljšan izhod oneliner: git log --graph --oneline
Tako lahko razumete, kdaj, kako in zakaj ter druge veje so bile združene v trenutno odjavljeno vejo.
1.9 –show-linear-break
Ukaz: git log --show-linear-break
To je koristen ukaz za označevanje ovire med dvema zaporednima predajama, ki ne spadata v linearno vejo, z drugimi besedami, predpisi, ki prihajajo iz različnih vej.
Zgornji izhod primerjajte z izhodom ukaza ‘git log –graph’, ki nazorno prikazuje, kako so bili združeni predaji »linear-break«.
Bonus: Povzemite izhodne podatke git dnevnika: 'git shortlog'
„git shortlog
‘Ukaz kategorizira avtorja dnevnikov predavanja in natisne povzetek pregleda, v katerem so zapisane zaveze vsakega avtorja.
Ukaz: ožji dnevnik git log
Ukaz : git log kratice -s
-s je kratica –summary, potisni opis urejanja in samo natisni število zavez vsakega avtorja, takole:
Poleg tega lahko izhodne podatke tudi formatirate z uporabo istih ograd, kot je opisano pod--pretty = format
'Možnost
Poskusite z ukazom: git kratki dnevnik --format = '% h | % s '
Zato se strinjate, da je ta rezultat bolj smiseln, saj prikazuje identiteto in identiteto za vsakega avtorja skupaj s skupnim številom zavez.
Opomba : Zanimivo je, da lahko zelo enostavno najdete podružnico, ki se je posebej zavezala. To razpravo je vredno poglobiti v prihodnjih člankih.
S tem smo prišli do konca tegaZgodovina zapisa zapisa dnevnika Gitblog, upam, da se vam je zdel informativen.
V tem prispevku smo se naučili nekaterih tehnik oblikovanja, ki informacije o projektu natisnejo na bolj prilagojen in uporabniku prijazen način. Zdaj bi morali vedeti, kako učinkovito uporabiti parametre ukaza 'git log', da iz svoje predane zgodovine izvlečete vse potrebne informacije o izvorni kodi. Tako smo s tem prišli do konca tega članka, upam, da se vam je zdel informativen.
Če vas zanima več, si oglejte to Edureka, zaupanja vredno podjetje za spletno učenje z mrežo več kot 250.000 zadovoljnih učencev, ki se širijo po vsem svetu. Tečaj Edureka DevOps Certification Training pomaga učencem, da razumejo, kaj je DevOps, in pridobijo strokovno znanje v različnih procesih in orodjih DevOps, kot so Puppet, Jenkins, Nagios, Ansible, Chef, Saltstack in GIT za avtomatizacijo več korakov v SDLC.
Imate vprašanje za nas? Prosimo, omenite ga v oddelku za komentarje tega članka o 'Zgodovini zapisa zapisa dnevnika Git', mi pa se vam bomo oglasili.