1558 votes

Comment puis-je voir un git log d'un seul utilisateur s'engage?

Lors de l'utilisation d' git log comment puis-je filtrer par utilisateur, de sorte que je vois s'engage uniquement à partir de cet utilisateur?

2150voto

Adam Dymitruk Points 34999

Cela fonctionne pour les deux git log et gitk - les 2 façons les plus courantes de visualisation de l'historique. Vous n'avez pas besoin d'utiliser le nom complet.

git log --author="Jon"

va correspondre à une livraison effectuée par un "Jonathan Smith"

git log --author=Jon

et

git log --author=Smith

serait aussi travailler. Les citations sont en option si vous n'avez pas besoin d'espaces.

Ajouter --all si vous avez l'intention de rechercher toutes les directions et pas seulement le commit courant ancêtres dans votre pension.

Vous pouvez également facilement correspondre à plusieurs auteurs comme regex est le mécanisme sous-jacent de ce filtre. Si la liste s'engage par Jonathan ou Adam, vous pouvez faire ceci:

git log --author="\(Adam\)\|\(Jon\)"

Afin d'exclure s'engage par un auteur particulier ou un ensemble d'auteurs à l'aide des expressions régulières comme indiqué dans cette question, vous pouvez utiliser une anticipation négatif, en combinaison avec l' --perl-regexp switch:

git log --author='^(?!Adam|Jon).*$' --perl-regexp

Alternativement, vous pouvez exclure s'engage rédigé par Adam à l'aide d' bash et de la tuyauterie:

git log --format='%H %an' | 
  grep -v Adam | 
  cut -d ' ' -f1 | 
  xargs -n1 git log -1

Si vous souhaitez exclure s'engage engage (mais pas nécessairement l'auteur) par Adam, remplacez - %an avec %cn. Plus de détails à ce sujet dans mon blog ici: http://dymitruk.com/blog/2012/07/18/filtering-by-author-name/

78voto

wilhelmtell Points 25504
git log --author="that user"

55voto

slott Points 835

Sur github, il est aussi un secret de la sorte...

Vous pouvez filtrer s'engage par l'auteur dans le commit vue par l'ajout de param ?auteur=github_handle. Pour exemple, le lien https://github.com/dynjs/dynjs/commits/master?author=jingweno affiche une liste des commits du Dynjs projet

33voto

ustun Points 2918
git help log

vous donne la page de manuel de la commande git log. Recherche pour "auteur".

git log --author="username"

comme l'a déjà suggéré.

16voto

Johnsa Philip Points 101

cat | git log --author="authorName" > author_commits_details.txt

Cela donne à vos commits en format texte.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X