Réponses:
Il existe plusieurs options pour imprimer la date. Le plus simple est probablement d'utiliser simplement l'un des --pretty
formats précuits , comme git log --pretty=fuller
- cela affichera les deux dates. Si vous ne voulez voir qu'une seule date, mais en faire la date de validation, vous pouvez utiliser git log --format=<some stuff>
. Tous les codes autorisés pour définir le format sont documentés dans git help log
. La commettras ce jour est l' un des %cd
, %cD
, %cr
, %ct
ou %ci
, selon le format que vous préférez dans.
Si c'est quelque chose que vous voulez faire souvent, mettez-le dans un alias ou écrivez un script auxiliaire pour économiser lors de la frappe.
Vous pouvez utiliser --pretty=format
et utiliser %cr
pour la date de validation relative.
Par exemple:
$ git log --graph --pretty=format:'%C(auto)%h%d (%cr) %cn <%ce> %s'
Vous pouvez définir un alias dans git pour rendre cela plus facile à utiliser. J'ai ce qui suit dans mon .gitconfig
:
[alias]
# see `git help log` for detailed help.
# %h: abbreviated commit hash
# %d: ref names, like the --decorate option of git-log(1)
# %cn: commiter name
# %ce: committer email
# %cr: committer date, relative
# %ci: committer date, ISO 8601-like format
# %an: author name
# %ae: author email
# %ar: author date, relative
# %ai: author date, ISO 8601-like format
# %s: subject
# my awesome git log replacement
lol = log --graph --pretty=format:\"%C(auto)%h%d%Creset %C(cyan)(%cr)%Creset %C(green)%cn <%ce>%Creset %s\"
# same as above, but ISO date
lold = log --graph --pretty=format:\"%C(auto)%h%d%Creset %C(cyan)(%ci)%Creset %C(green)%cn <%ce>%Creset %s\"
# using build-in standards
lol2 = log --oneline --graph --decorate
# shows branches and their last commits
lol3 = log --all --graph --decorate --oneline --simplify-by-decoration
Sur Linux ou des systèmes similaires, vous pouvez utiliser des guillemets simples '
au lieu de guillemets doubles "
:
[alias]
lol = log --graph --pretty=format:'%C(auto)%h%d%Creset %C(cyan)(%cr)%Creset %C(green)%cn <%ce>%Creset %s'
Avec cela, exécutez simplement git lol
ou les autres variantes pour voir la jolie sortie.
Voici la sortie de git lol --simplify-by-decoration
:
lol
est plus facile à taper que log
et sonne mieux aussi.
git log
si jamais vous en avez besoin.Voici la sortie de git lold
avec les dates au format ISO. Utile pour voir la date / heure exacte d'un commit, avec en prime de pouvoir voir facilement le fuseau horaire du contributeur.
Edit 2020-06 : Ajout de captures d'écran. Mise à jour pour utiliser %C(auto)
(coloration automatique / par défaut) pour %h
(commit hash) et %d
(ref names). Ajouté %cn
(nom du commissaire) en plus de l'email.
git log --graph --pretty=format:\"%C(yellow)%h%Creset%C(cyan)%C(bold)%d%Creset %C(cyan)(%cr)%Creset %C(green)%ce%Creset %s\"
Je préfère ce format, n'inclut pas le nom de l'auteur et inclut la date réelle de validation.
git log --graph --pretty=format:"%C(yellow)%h%x09%Creset%C(cyan)%C(bold)%ad%Creset %C(green)%Creset %s" --date=short
git show --pretty=fuller HEAD
pour voir un exemple). Pour le développement local, ce sont généralement les mêmes, mais pour les correctifs ajoutés par courrier électronique ou par d'autres mécanismes, ils peuvent différer, où la AuthorDate est la date à laquelle le correctif a été généré, et le CommitDate étant quand il a été réellement appliqué au référentiel.