2010-08-11 15 views
94

Para un archivo dado en un repositorio de Mercurial, ¿cómo puede ver el historial de revisión?¿Cómo ver el historial de revisiones para el archivo Mercurial?

¿Y cómo se pueden diferir dos revisiones del archivo?

Lo ideal es hacer todo esto con herramientas visuales (utilizamos ExamDiff para hacer otras diffs).

Diría que esta es la funcionalidad de control de fuente básica, pero parece que no puedo entender cómo hacerlo con Mercurial.

Respuesta

116
hg log file 

hg diff -r 10 -r 20 file 
+1

perfecto .. Funciona con ExamDiff también: 'hg examdiff-R10-R20 file' –

+2

También puede ser útil para buscar una palabra clave en lugar de un nombre de archivo exacto, hg log -k palabra clave – Despertar

+0

Esto me da cero salida/respuesta; no pasa nada. – Aerovistae

23

El hgk extension le da hg view file comando que muestra una historia visual, desde el que puede ver las diferencias/Vdiff par cualquiera de las revisiones.

TortoiseHg le da thg log file comando que hace lo mismo pero se ve mejor.

+0

muy bueno! pero 'hgtk' ahora es solo un contenedor, use 'thg' en linux – milkplus

+1

hgk funciona para revisiones completas, pero ¿cómo se llega a diff * archivos * individuales? – keflavich

8

Para facilitar la lectura

hg diff -r revision1:revision2 file 

Dónde revision1 y revisión2 pueden ser una etiqueta, etc. conjunto de cambios

3

Si utiliza TortoiseHg: usuarios de Windows pueden utilizar el Explorador de Windows y ver el historial de revisiones haciendo clic derecho en el archivo.

Para usuarios de Linux, puede hacerlo dentro de TortoiseHg pero me llevó un tiempo averiguar cómo. Debe hacer clic derecho en el archivo deseado y seleccionar "Historial de archivos". Sin embargo, por algún motivo misterioso, el archivo debe ser inalterado. Por otra parte, para encontrar el archivo deseado, hay dos opciones:

En ### revision set query### uno puede escribir:

file("**<myfile>") 

La doble ** son necesarios para buscar directorios de forma recursiva. Esto le proporciona inmediatamente una lista de todos los repositorios en los que se modificó el archivo deseado.

Como alternativa, junto al ### filter text ###, haga clic primero en el signo del signo de interrogación y seleccione "limpiar" para ver todos los archivos en el repositorio. Luego, dentro del cuadro ### filter text ### puede reducir el número de archivos que se muestran.

Alternativamente, los usuarios de Linux pueden hacerlo desde un terminal como se sugiere por Geoffrey Zheng arriba:

thg log file 
+0

Quizás esto haya cambiado desde 2010, pero puedo hacer clic en un archivo modificado en THG y ver el historial de revisiones. – DaveInCaz

Cuestiones relacionadas