J'ai besoin d'obtenir le rapport de tous les commits que l'auteur a faits. Jusqu'à présent, j'ai le script qui encapsule la commande suivante:
git log --pretty=format:"%ad:%an:%d:%B" --date=short --reverse --all --since=2.months.ago --author=Petr
Ça fonctionne bien. Cependant, il ne signale que les actions de la branche actuelle. Existe-t-il une option qui consignerait les messages de validation pour l'auteur dans toutes les branches , et pas seulement dans la branche actuelle?
En d'autres termes, git peut-il faire une séquence triée inversement (par date / heure) de toutes les validations dans le référentiel et extraire les informations de journal de cette séquence?
Résolu: (copié du commentaire ci-dessous qui est caché autrement)
Le problème était que j'ai un référentiel et deux clones pour travailler simultanément sur deux branches. J'ai poussé les modifications dans le référentiel d'origine, mais j'ai oublié de récupérer les modifications dans le référentiel cloné. De cette façon, il semblait que --all
cela ne fonctionnait pas lors de son utilisation pour le référentiel cloné.
git log
acceptecommittish
comme premier argument:git log mybranch
(et listez toutes vos branches avecgit branch
).committish
? Est-il possible d'obtenir les informations via une seule commande git?--all
. Votre commande est correctegit rev-list
analyse,git log --all
c'est OK.--all
, mais cela ne fonctionne apparemment pas de cette façon pour moi. Je ne comprends pas son explication d'aide: faites comme si toutes les référencesrefs/
sont répertoriées sur la ligne de commande comme<commit>
.Réponses:
Votre commande est correcte, car vous utilisez le
--all
commutateur qui donne toutes les validations de toutes les branches. Pour répondre à la question dans votre commentaire, cela fonctionne également dans les référentiels nus.la source
Au lieu de
--all
vous voudrez peut-être utiliser--branches
, car--all
comprend égalementrefs/tags
etrefs/remotes
.la source