Comment puis-je voir un git log d'un seul utilisateur s'engage?
Lors de l'utilisation de git log
, comment puis-je filtrer par utilisateur, de sorte que je vois s'engage uniquement à partir de cet utilisateur?
- Est-il un moyen de voir la même chose directement sur
github
? - Pour ce faire, sur github: stackoverflow.com/a/23515164/26510
Vous devez vous connecter pour publier un commentaire.
Cela fonctionne pour les deux
git log
etgitk
- le 2 façons les plus courantes de visualisation de l'historique. Vous n'avez pas besoin d'utiliser le nom complet.va correspondre à une livraison effectuée par un "Jonathan Smith"
et
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 le faire:
Afin d'exclure s'engage par un auteur particulier ou un ensemble d'auteurs à l'aide des expressions régulières comme l'a noté dans cette question, vous pouvez utiliser un anticipation négatif en combinaison avec la
--perl-regexp
commutateur:Alternativement, vous pouvez exclure s'engage rédigé par Adam à l'aide
bash
et de la tuyauterie:Si vous souhaitez exclure s'engage engage (mais pas nécessairement l'auteur) par Adam, remplacer
%an
avec%cn
. Plus de détails à ce sujet dans mon blog ici: http://dymitruk.com/blog/2012/07/18/filtering-by-author-name/-E
drapeau pour obtenir le "multi-utilisateur" de l'exemple ci-dessus pour travailler. Voulais m'assurer que mon expérience n'est pas unique avant je modifier la réponse--all
pour avoir la liste de l'historique s'engage de toutes les directions au lieu de simplement commit courant ancêtres. Git implicitement fonctionnegit log HEAD
lorsque vous émettezgit log
.gitk
de laisser le parent s'engage à partir d'autres auteurs? (Ils sont présentés avec des cercles blancs.) En revanche,git log --graph
ne montre pas le parent s'engage; il ne montre que la donnée de l'auteur s'engage. J'aimerais voir la même sortie dansgitk
. (Déjà vérifié les Préférences et de Modifier la Vue, ne pouvait pas trouver quelque chose d'utile.)git log --author='^(?!.*Jon)' --perl-regexp
git log --author='^(?!.*Charith)' --perl-regexp
n'a pas de travail.git log --author="^(?!.*Charith)" --perl-regexp
a fait un travailSur github, il est aussi un secret façon...
Vous pouvez filtrer s'engage par l'auteur dans le commit vue par l'ajout de param
?author=github_handle
. Par exemple, le lien https://github.com/dynjs/dynjs/commits/master?author=jingweno affiche une liste des commits du Dynjs projetvous donne la page de manuel de la commande git log. Recherche pour "auteur", il en appuyant sur /et puis en tapant "auteur", suivie de la touche Enter. Tapez "n" quelques fois pour accéder à la section correspondante, qui le révèle:
comme l'a déjà suggéré.
Noter que ce sera vous donner l'auteur de la commet, mais dans Git, l'auteur peut être quelqu'un de différent de la valider (par exemple dans le noyau de Linux, si vous soumettez un patch comme un utilisateur ordinaire, il peut être commis par un autre utilisateur d'administration.) Voir La différence entre l'auteur et le commiter dans Git? pour plus de détails)
La plupart du temps, ce que l'on désigne comme l'utilisateur est à la fois le livreur et l'auteur si.
De tirer plus de détails (Ici
%an
se réfère à l'auteur)Utiliser ceci :-
%ae
au lieu de%an
(qui a donné son Nom.)--author
fait recherche par le nom de l'auteur et de ne pas valider le nom. Je voudrais changer"username"
de l'auteurCe qui donne à votre commet en format texte.
cat |
?Si vous souhaitez filtrer votre propre s'engage à:
Vous pouvez même abréger un peu, simplement en utilisant une partie du nom de l'utilisateur:
essayer cet outil
https://github.com/kamranahmedse/git-standup
Utilisation
Ci-dessous la description de chacun des drapeaux
Depuis l'autre question était (probablement à tort?) à verrouillé, je viens de mettre cela ici:
afficher les auteurs avec leurs commettre compte:
trouver tous les commits pour le nom d'utilisateur spécifiques:
Show n nombre de journaux pour x de l'utilisateur dans la couleur par l'ajout de ce petit extrait de code dans votre .bashrc fichier.
Pour afficher les 10 derniers s'engage par Frank:
l 10 frank
Pour afficher les 20 derniers s'engage par n'importe qui:
l 20
Si vous utilisez GitHub:
il affichera la liste ci-dessous format
Vous pouvez utiliser soit = ou "espace".
Par exemple, deux commandes suivantes renvoient la même
Mon cas: je suis en utilisant l'arborescence des sources, j'ai suivi les étapes suivantes:
CRL+3
Bien que, il y a beaucoup de réponses utiles. Alors que, juste pour ajouter un autre chemin. Vous pouvez également utiliser
Il va montrer la sortie à la regroupés de la manière suivante:
Ici, pour un total de 5 validations sont effectuées par
<Author Name>
en vertu de la branche courante. Alors que vous pouvez également utiliser--all
pour faire respecter les rechercher partout (toutes les branches) dans le dépôt git.Un hic: git en interne essaie de faire correspondre une entrée
<author name>
avec le nom et l'adresse électronique de l'auteur dans la base de données de git. Il est sensible à la casse.