En aquest article, parlarem d'algunes opcions avançades per formatar i imprimir els registres de confirmació per obtenir la informació que necessiteu de l'historial del diari del projecte. Com que ja ho sabem, manté un diari dels canvis compromesos amb l’historial del projecte, ara explorarem més maneres de fer servir l’ordre ‘git log’.
En primer lloc, estic canviant a / comprovant la branca 'feature1' per obtenir un historial més còmode i curt.
Utilitzeu les ordres -
$cd myProj
–Canviar al projecte git
$git checkout feature1
–Saltiu a la branca ‘feature1’
1. Configura el format
1.1 Imprimiu bastant el contingut de sortida en un format determinat
Sintaxi: git log --pretty [=]
on, pot ser un dels en línia, curt, mitjà, ple, més complet, correu electrònic, crua, i format:
Quan = la part s'omet, per defecte mitjà.
1.1.1 –pretty = oneline
Registre de confirmació d'impressió bastant imprès en una 'línia única'
Comandament: git log --pretty = oneline
Formata la sortida en seqüència:
1.1.2 –pretty = curt
Format de la sortida de confirmació 'curta' en el format següent:
commit (refname)
Autor:
1.1.3 –pretty = mitjà
Comandament: git log --pretty = mitjà
Imprimeix la sortida de confirmació en format 'mitjà':
compromís
Autor :
Data:
1.1.4 –pretty = ple
Comandament: git log --pretty = complet
La sortida té el format següent:
commit (refname)
Autor:
Compromís:
1.1.5 –pretty = més complet
Comandament: git log --pretty = més complet
commit (refname)
Autor:
Data d’autor :
Compromís:
Data de compromís:
1.1.6 –pretty = correu electrònic
Comandament: git log --pretty = correu electrònic
Imprimeix la sortida del registre en el format d'estil de correu electrònic:
Des de
Des de:
Data:
Assignatura: [PATCH]
1.1.7 –pretty = cru
Comandament: git log --pretty = cru
El format de sortida de registre en brut mostra la confirmació completa exactament tal com s’emmagatzema a l’objecte de confirmació.
compromís
arbre
pare
autor
compromís
1.1.8 –format:: format personalitzat
El format us permet especificar quina informació de l'objecte de confirmació voleu imprimir al registre de sortida de confirmació
Considerem els diversos espais reservats que ofereix aquesta opció com una funció 'C printf' amb l'ajuda de fragments de codi:
Comandament: git log --pretty = format: '% h% ad | % s% d [% an] '--date = curt
Format de sortida:
| [nom de l'autor]
% h = Identificatius hash-id / sha1commit reduïts
% H = identificacions sha-1 llargues
% a = data de creació
% s = confirmar la línia de títol del tema
% d = noms de punter de referència (branca, etiqueta)
% an = nom de l'autor
-data = curt: imprimeix només la data i no l'hora en un format llegible
Ara, què tal si voleu que aquesta sortida sigui més respectuosa amb els humans, utilitzant colors.
Comandament:
git log --pretty = format: '% C (groc)% h% Creset% ad | % Cgreen% s% Creset% Cred% d% Creset% Cblue [% an] '--date = short
Alguns altres espais reservats que s’utilitzen al fragment de codi anterior són:
% C (groc) : Gireu la següent cadena a groga
% Creset : Restableix la següent cadena al color predeterminat (blanc)
% Cgreen : canvia la següent cadena a verda
% Suposo: Canvieu la cadena següent a vermella
% Cblue: Feu que el nom de l'autor sigui de color blau
No cal recordar i escriure tota l'ordre cada vegada, només cal que utilitzeu un nom curt com a git alias com es mostra a continuació:
Comandament:
git config --global alias.c-hist 'log --pretty = format:'% C (groc)% h% Creset% ad | % Cgreen% s% Creset% Cred% d% Creset% Cblue [% an] '--date = short'
'C-hist' representa c ustomitzat- hist ory
Per tant, com hauríeu observat, estic configurant el meu global configuració de git fitxer amb els valors.
com instal·lar Windows Eclipse
Ara, per comprovar l'historial de la branca actual, tot el que heu de fer és executar l'ordre, així:
Comandament: vés c-hist
1.2 –abbrev-commit: escurçar git commit hash-id
Comandament: git log --abbrev-commit
El nom complet de l’objecte de confirmació hexadecimal de 40 bytes s’escurça a 7 bytes per defecte.
Deixem-ho enganxar amb el--oneline
'Opció per a una visualització convenient, com ara:
Comandament: git log --abbrev-commit --oneline
El més emocionant és que també podeu especificar la longitud de byte dels identificadors sha-1 mitjançant l’opció ‘–abbrev =’, tal com es mostra a continuació:
Comandament: git log --abbrev-commit --abbrev = 5 --oneline
És evident que els identificadors sha-1 ressaltats es redueixen a la mida de 5 bytes.
1.3 –no-abbrev-commit
Mostra el nom complet de l’objecte de confirmació hexadecimal de 40 bytes.
Això nega –Abbrev-commit i aquelles opcions que impliquencom ara “–oneline”.
Comandament: git log --pretty = oneline --no-abbrev-commit
1.4 –data relativa
Comandament: git log --relative-date
Tingueu en compte que aquest temps ressaltat pot canviar en relació amb el moment en què executeu l'ordre al vostre sistema.
1.5 –data =
També podeu formatar la data dels registres de confirmació en qualsevol de les opcions de format següents:
1.5.1 –data = relativa
Comandament :git log --date = relatiu
Això és sinònim de l'ordre anterior 'git log --relative-date
”I imprimeix els mateixos compromisos.
1.5.2 –data = local
Comandament : git log --date = local
1.5.3 –data = iso
Comandament: git log --date = iso
1.5.4 –data = iso-estricta
Comandament: git log --date = iso-strict
1.5.5 –data = rfc
Comandament: git log --date = rfc
1.5.6 –data = curta
Comandament: git log --date = curt
1.5.7 –data = en brut (mostra la data en segons)
Comandament: git log --date = raw
Imprimiu el temps com a segons des del fitxer unix epoc time (01 de gener de 1970) seguit de la zona horària.
1.5.8 –data = humà
Comandament: git log --date = human
1.5.9 –data = unix
Mostra la data com unix epoc Hora (UTC).
Comandament: git log --date = unix
1.6 –pares
Imprimiu també els pares de cada commit en el format:
Comandament: git log --parents
Ordre de sortida Oneliner: git log --parents --oneline
Punts a destacar:
C366419 és un commit de fusió, per tant té 2 pares respectivament: feeb30c i 4920adc
igualment
1d67b50 és una confirmació de combinació, que va resultar de la combinació f2ff2e4 i abb694b
078f9f5 és una confirmació de combinació creada mitjançant la combinació 9a2412e i ab3a5e5
Considerant que, 86792c6 és la confirmació inicial, per tant no hi ha cap pare.
1,7 –infants
Imprimiu també els nens del formulari
Comandament: git log --children --oneline
Nota :
006b9ce és l'últim commit, per tant, encara no té cap objecte de commit infantil. El següent canvi que feu i comprometreu en aquesta branca serà l'objecte de confirmació secundari d'aquest darrer ID sha-1.
1,8 –graf
Dibuixeu una representació gràfica basada en text de l'historial de confirmacions abans dels identificadors sha-1.
Comandament: git log --graph
Millora de la sortida en línia: git log --graph --oneline
Això us permet entendre quan, com i per què i altres sucursals es van fusionar a la sucursal actualment retirada.
1.9 –show-linear-break
Comandament: git log --show-linear-break
Aquesta és una ordre útil per indicar una barrera entre 2 confirmacions consecutives que no pertanyen a una branca lineal, és a dir, les confirmacions que provenien de diferents branques.
Compareu la sortida anterior amb la sortida de l’ordre ‘git log –graph’ que mostra clarament com s’han fusionat els compromisos de “salt lineal”.
Bonificació: resumiu la sortida del registre de git: 'git shortlog'
El ‘git shortlog
'Ordre classifica els registres de confirmació per autor i imprimeix un resum general, que indica les confirmacions realitzades per cada autor.
Comandament: git log shortlog
Comandament : git log shortlog -s
-s significa –resum, suprimeix la descripció de la confirmació i simplement imprimeix el recompte de confirmacions de cada autor, així:
A més, també podeu formatar la sortida utilitzant els mateixos espais reservats que es descriuen a la secció '--pretty = format
‘Opció
Proveu l'ordre: git shortlog --format = '% h | % s '
Per tant, acceptareu que aquesta sortida té més sentit ja que mostra la identificació i la identificació de cada autor juntament amb el recompte total de compromisos.
Nota : És interessant tenir en compte que podeu trobar molt fàcilment la branca que va fer un compromís concret. Val la pena aprofundir en aquest debat en els propers articles.
Així, amb això, arribem al finalHistorial de formats de registre de Gitbloc, espero que us hagi resultat informatiu.
En aquest post, vam aprendre algunes tècniques de format que imprimeixen la informació del projecte d’una manera més personalitzada i fàcil d’utilitzar. Ara hauríeu de saber utilitzar eficaçment els paràmetres de l’ordre ‘git log’ per treure tota la informació que necessiteu sobre el codi font del vostre historial compromès. Així, amb això, arribem al final d’aquest article, espero que us sigui d’informació.
Si teniu curiositat per obtenir més informació, podeu consultar-ho per Edureka, una empresa d'aprenentatge en línia de confiança amb una xarxa de més de 250.000 estudiants satisfets repartits per tot el món. El curs de formació en certificació Edureka DevOps ajuda els estudiants a entendre què és DevOps i obtenir experiència en diversos processos i eines DevOps com Puppet, Jenkins, Nagios, Ansible, Xef, Saltstack i GIT per automatitzar diversos passos en SDLC.
Tens alguna pregunta? Esmenteu-lo a la secció de comentaris d’aquest article sobre “Historial de formats de registre de Git” i us respondrem.