2011-03-25 19 views
10

para ver las diferencias que utilizamos:Mercurial - diff múltiples conjuntos de cambios en la misma hora?

  • hg diff -c <xyz>: Mostrar diferenciaciones de un conjunto de cambios dada
  • hg diff -r <xyz>: Mostrar todos los diffs desde un conjunto de cambios dada

Pero supongamos que tiene conjuntos de cambios 4-5-6 -7-8, donde los conjuntos de cambios 4, 6, 8 estaban relacionados con un área particular del sistema y en un diff que quería ver los cambios realizados desde sólo estos tres conjuntos de cambios, ¿cómo hacer esto? Si el archivo fue modificado en un conjunto de cambios 4 y 8, el diff mostraría la diferencia entre el conjunto de cambios 3 y 8.

Respuesta

9

Si los conjuntos de cambios 4,5,6,7,8 son lineales en la historia no creo que incluso con revsets se puede hacer eso usando sólo -r. Sin embargo, si los cambios en el 5 y 7 son en realidad de una parte diferente del sistema es probable que pueda obtener la salida que desea mediante la adición de un -X o una -I. Algo como esto:

hg diff -r 3::8 -X part/you/do/not/want/** 

o

hg diff -r 3::8 -I part/you/do/want/** 

Si, alternativamente, usted es un poco más exacta acerca de la crianza de un conjunto de cambios tan pronto como sea posible en la historia que tendríamos una topología de la siguiente manera:

[3]---[4]---[6]---[8]---[9] 
    \     /
    ------[5]---[7]------ 

y luego se obtendría lo que quiere usando:

hg diff -r 3::8 

(nótese el doble de colon que cuenta la gama de seguir topología no sólo rango numérico)

Cuestiones relacionadas