web-dev-qa-db-fra.com

Trouver l'auteur d'une ligne de code dans Mercurial

Comment savoir qui est responsable d'une ligne de code spécifique? Je connais le numéro de lin et le nom du fichier mais j'aimerais que Mercurial me dise le ou les auteurs de cette ligne de code spécifique. Y a-t-il une commande pour cela?

111
Daniel O

Sur la ligne de commande, vous souhaitez utiliser hg annotate -u (-u peut être combiné avec -n pour obtenir le numéro de révision local, qui pourrait s'avérer utile). Vérifier hg help anno pour plus d'options.

121
djc

J'étais fan de "svn blame", j'ai donc ajouté à mon ~/.hgrc:

[alias]
blame = annotate --user --number

donc je peux simplement taper "hg blame" ;-)

35
Christophe Muller

Si vous utilisez TortoiseHG

hgtk annotate <filename>

Ou en trouvant le fichier dans le journal, en cliquant dessus avec le bouton droit et en sélectionnant "Annoter le fichier"

15
artemb

Dans la fenêtre d'annotation de tortoisehg, il y a un nouveau menu contextuel pour l'activer.

voir https://bitbucket.org/tortoisehg/thg/issues/1861/annotate-window-annotate-with-authorsenter image description here

9
prime23

J'ai cherché cela pendant des siècles dans Tortoise Workbench; merci à @artemb et @Steve Pitchers de m'avoir pointé dans la bonne direction. Il m'a encore fallu un certain temps pour le repérer.

enter image description here

9
perlyking

sur la ligne de commande, vous pouvez utiliser soit hg blame soit hg annotate.

$ hg blame -u -c -l Filename

-u --user                list the author (long with -v)
-c --changeset           list the changeset
-l --line-number         show line number at the first appearance
2
Nayagam