Dans cet article, nous discuterons de certaines options avancées pour formater et imprimer les journaux de validation pour extraire les informations dont vous avez besoin de l'historique du journal de votre projet. Puisque nous savons déjà, tient un journal des modifications apportées à l’historique du projet, nous allons maintenant explorer d’autres façons dont la commande «git log» est utile.
Premièrement, je passe à / vérifie la branche «feature1» pour un historique pratique et plus court.
Utilisez les commandes -
$cd myProj
–Passer au projet git
$git checkout feature1
–Saute à la branche «feature1»
1. Valider le formatage
1.1 Pretty-print le contenu de sortie dans un format donné
Syntaxe: git log --pretty [=]
où, peut être l'un des une ligne, court, moyen, plein, plus plein, email, brut, et format:
Quand = partie est omise, elle est par défaut moyen.
1.1.1 –pretty = en ligne
Joli journal de validation imprimé sur une «seule ligne»
Commander: git log --pretty = en ligne
Formate la sortie dans l'ordre:
1.1.2 –pretty = court
Formatez la sortie de validation 'courte' au format:
commit (refname)
Auteur:
1.1.3 –pretty = moyen
Commander: git log --pretty = moyen
Imprimer la sortie de validation au format «moyen»:
commettre
Auteur :
Date:
1.1.4 –pretty = plein
Commander: git log --pretty = complet
La sortie est au format:
commit (refname)
Auteur:
Commettre:
1.1.5 –pretty = plus plein
Commander: git log --pretty = plus complet
commit (refname)
Auteur:
AuteurDate :
Commettre:
Date de validation:
1.1.6 –pretty = email
Commander: git log --pretty = email
Imprimer la sortie du journal au format de style e-mail:
De
De:
Date:
Matière: [PIÈCE]
1.1.7 –pretty = brut
Commander: git log --pretty = raw
Le format de sortie du journal brut montre la validation entière exactement telle qu'elle est stockée dans l'objet de validation.
commettre
arbre
parent
auteur
commettre
1.1.8 –format:: Formatage personnalisé
Le format vous permet de spécifier les informations de l'objet de validation que vous souhaitez imprimer dans le journal de sortie de validation
Considérons les différents espaces réservés que cette option fournit, tout comme une fonction «C printf» à l'aide d'extraits de code:
Commander: git log --pretty = format: '% h% ad | % s% d [% an] '--date = court
Format de sortie:
| [nom de l'auteur]
% h = ID de hachage / sha1commit raccourcis
% H = identifiants sha-1 longs
%à = date de création
% s = valider la ligne de titre du sujet
%ré = noms de pointeur de référence (branche, balise)
%une = nom de l'auteur
-Date = short: n'imprime que la date et non l'heure dans un format lisible
Maintenant, que diriez-vous de rendre cette sortie plus conviviale, en utilisant des couleurs.
Commander:
git log --pretty = format: '% C (jaune)% h% Creset% ad | % Cgreen% s% Creset% Cred% d% Creset% Cblue [% an] '--date = short
Certains autres espaces réservés utilisés dans l'extrait de code ci-dessus sont:
% C (jaune) : Tournez la chaîne suivante en jaune
% Creset : Réinitialise la chaîne suivante à la couleur par défaut (blanche)
% Cgreen : changer la chaîne suivante en vert
%J'imagine: Changer la chaîne suivante en rouge
% Cblue: Rendre le nom de l'auteur en bleu
Vous n'êtes pas obligé de vous souvenir et d'écrire la commande entière à chaque fois, utilisez simplement un nom court comme git alias comme indiqué ci-dessous:
Commander:
git config --global alias.c-hist 'log --pretty = format:'% C (jaune)% h% Creset% ad | % Cgreen% s% Creset% Cred% d% Creset% Cblue [% an] '--date = short'
'C-hist' représente c ustomisé hist ory
Donc, comme vous l'auriez remarqué, je suis en train de définir mon configuration git fichier avec les valeurs.
lire le fichier xml dans l'exemple java
Maintenant, pour vérifier l'historique de la branche actuelle, tout ce que vous avez à faire est d'exécuter la commande, comme ceci:
Commander: aller c-hist
1.2 –abbrev-commit: raccourcir git commit hash-id
Commander: git log --abbrev-commit
Le nom de l'objet de validation hexadécimal complet de 40 octets est raccourci à 7 octets par défaut.
Faisons le club avec le ‘--une ligne
«Option pour une vue pratique, comme ceci:
Commander: git log --abbrev-commit --oneline
Ce qui est plus intéressant, c’est que vous pouvez également spécifier la longueur en octets des identifiants sha-1 à l’aide de l’option ‘–abbrev =’, comme illustré ci-dessous:
Commander: git log --abbrev-commit --abbrev = 5 --oneline
Clairement, les identifiants sha-1 mis en surbrillance sont réduits à une taille de 5 octets.
1.3 –no-abbrev-commit
Affiche le nom de l'objet de validation hexadécimal complet de 40 octets.
Cela nie –Abbrev-commit et ces options qui impliquenttel que «–oneline».
Commander: git log --pretty = oneline --no-abbrev-commit
1.4 - date-relative
Commander: git log --relative-date
Veuillez noter que cette heure en surbrillance est sujette à changement en fonction de l'heure à laquelle vous exécutez la commande sur votre système.
1.5 –date =
Vous pouvez également formater la date des journaux de validation dans l'une des options de format suivantes:
1.5.1 –date = relative
Commander :git log --date = relative
Ceci est synonyme de la commande ci-dessus 'git log --relative-date
»Et imprime les mêmes commits.
1.5.2 –date = local
Commander : git log --date = local
1.5.3 –date = iso
Commander: git log --date = iso
1.5.4 –date = iso-strict
Commander: git log --date = iso-strict
1.5.5 –date = rfc
Commander: git log --date = rfc
1.5.6 –date = courte
Commander: git log --date = court
1.5.7 –date = raw (affiche la date en secondes)
Commander: git log --date = raw
Imprimez le temps en secondes depuis le epoc unix heure (01 janvier 1970) suivi du fuseau horaire.
1.5.8 –date = humain
Commander: git log --date = humain
1.5.9 –date = unix
Affiche la date sous la forme epoc unix (UTC) heure.
Commander: git log --date = unix
1.6 –parents
Imprimez également les parents de chaque commit au format:
Commander: git log --parents
Commande de sortie Oneliner: git log --parents --oneline
Points à noter:
C366419 est un commit de fusion, donc a respectivement 2 parents: feeb30c et 4920adc
également
1d67b50 est un commit de fusion, résultant de la fusion f2ff2e4 et abb694b
078f9f5 est un commit de fusion créé par fusion 9a2412e et ab3a5e5
Tandis que, 86792c6 est le commit initial, donc pas de parent.
1,7 - enfants
Imprimez aussi les enfants dans le formulaire
Commander: git log --children --oneline
Remarque :
006b9ce est le dernier commit, donc n'a pas encore d'objet de commit enfant. La prochaine modification que vous apporterez et validerez sur cette branche sera l'objet de validation enfant de ce dernier identifiant sha-1.
1,8 –graphe
Dessinez une représentation graphique textuelle de l'historique des validations avant les identifiants sha-1.
Commander: git log --graph
Amélioration de la sortie oneliner: git log --graph --oneline
Cela vous permet de comprendre quand, comment et pourquoi et d'autres branches ont été fusionnées dans la branche actuellement extraite.
1.9 –show-linear-break
Commander: git log --show-linear-break
C'est une commande utile, pour indiquer une barrière entre 2 commits consécutifs n'appartenant pas à une branche linéaire, c'est-à-dire les commits provenant de branches différentes.
Comparez la sortie ci-dessus avec la sortie de la commande «git log –graph» qui montre clairement comment les commits «linear-break» ont été fusionnés.
Bonus: résumer la sortie du journal git: «git shortlog»
La 'git shortlog
«Commande catégorise les journaux de validation par auteur et imprime un résumé général, indiquant les validations effectuées par chaque auteur.
Commander: git log shortlog
Commander : git log shortlog -s
-s signifie –summary, supprime la description de la validation et affiche simplement le nombre de validations de chaque auteur, comme ceci:
En outre, vous pouvez également formater la sortie en utilisant les mêmes espaces réservés que ceux décrits sous '--pretty = format
«Option
Essayez la commande: git shortlog --format = '% h | % s '
Par conséquent, vous conviendrez que cette sortie a plus de sens car elle montre l'identifiant et le pour chaque auteur avec le nombre total de validations.
Remarque : Il est intéressant de noter que vous pouvez très facilement trouver la branche qui a fait un commit particulier. Cela vaut la peine de reprendre cette discussion en profondeur dans les prochains articles.
Donc avec ça, nous arrivons à la fin de ceciHistorique du format du journal Gitblog, j'espère que vous l'avez trouvé instructif.
Dans cet article, nous avons appris quelques techniques de formatage qui impriment les informations du projet de manière plus personnalisée et conviviale. Vous devriez maintenant savoir comment utiliser efficacement les paramètres de la commande «git log» pour extraire toutes les informations dont vous avez besoin sur le code source de votre historique de validation. Donc, avec cela, nous arrivons à la fin de cet article, j'espère que vous l'avez trouvé informatif.
Si vous souhaitez en savoir plus, vous pouvez consulter ceci par Edureka, une entreprise d'apprentissage en ligne de confiance avec un réseau de plus de 250 000 apprenants satisfaits répartis dans le monde entier. Le cours de formation à la certification Edureka DevOps aide les apprenants à comprendre ce qu'est DevOps et à acquérir une expertise dans divers processus et outils DevOps tels que Puppet, Jenkins, Nagios, Ansible, Chef, Saltstack et GIT pour l'automatisation de plusieurs étapes dans SDLC.
Vous avez une question pour nous? Veuillez le mentionner dans la section commentaires de cet article sur «Historique du format des journaux Git» et nous vous répondrons.