Encontrar al autor de una línea de código en Mercurial

114

¿Cómo averiguo quién es responsable de una línea de código específica? Conozco el número de lino y el nombre del archivo, pero me gustaría que Mercurial me dijera el autor o autores de esa línea de código específica. ¿Hay algún comando para eso?

Daniel O
fuente

Respuestas:

123

En la línea de comandos, querrá usar hg annotate -u( -use puede combinar con -npara obtener el número de revisión local, que puede resultar útil). Busque hg help annomás opciones.

djc
fuente
1
Creo que se origina en SVN.
Warren P
2
CVS lo llamó annotate. En SVN, el principal para el comando es blame, aunque annotatey praiseestán disponibles como alias.
djc
6
Para aclarar: esto muestra quién fue el último en editar la línea, no necesariamente quién la creó originalmente.
DanMan
35

Yo era fan de "svn blame", así que agregué a mi ~/.hgrc:

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

así que puedo escribir "hg blame";-)

Christophe Muller
fuente
9
Por cierto, hg blame es un comando predeterminado, por lo que puedo decir. No sé si es reciente, pero está ahí. Me llamó la atención mientras miraba el archivo de ayuda para anotar, que mostraba los alias "culpar";)
Tovi7
4
Tovi7: Lo agregué en febrero de 2008, por lo que fue el primero en 1.0. hg.intevation.org/mercurial/crew/rev/07f2236c4dee
djc
16

Si está usando TortoiseHG

hgtk annotate <filename>

O al buscar el archivo en el registro, hacer clic con el botón derecho y seleccionar "Anotar archivo"

artemb
fuente
5
Es thg annotate <filename>ahora
Randy Syring
2
"Anotar archivo" es un botón con un signo #.
Steve Pitchers
9

Busqué esto durante años en Tortoise Workbench; gracias a @artemb y @Steve Pitchers por señalarme en la dirección correcta. Todavía me tomó un tiempo detectarlo.

ingrese la descripción de la imagen aquí

alegre
fuente
1
Para acceder a esa vista de la izquierda que muestra los archivos del repositorio individuales, presione el pequeño botón que se muestra en la esquina superior izquierda, justo donde suelen estar los archivos modificados. Luego, coloque el cursor sobre los números de cada línea y mire hacia la parte inferior para ver al autor en la barra de estado.
Noumenon
4

en la línea de comando, puede usar hg blame o 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
Nayagam
fuente