rev |
line source |
igor@473
|
1 \chapter{Referencia de Órdenes}
|
igor@402
|
2 \label{cmdref}
|
igor@402
|
3
|
igor@473
|
4 \cmdref{add}{Añade ficheros en la próxima consignación}
|
igor@402
|
5 \optref{add}{I}{include}
|
igor@402
|
6 \optref{add}{X}{exclude}
|
igor@402
|
7 \optref{add}{n}{dry-run}
|
igor@402
|
8
|
jerojasro@516
|
9 \cmdref{diff}{imprime los cambios en el historial o el directorio actual}
|
igor@402
|
10
|
igor@473
|
11 Mostrar las diferencias entre revisiones para ficheros especificados o
|
igor@473
|
12 directorios, con el formato unificado diff. Si desea ver una
|
igor@473
|
13 descripción del formato unificado diff, ver la sección~\ref{sec:mq:patch}.
|
igor@402
|
14
|
igor@473
|
15 De forma predeterminada, esta orden no imprime las diferencias para
|
jerojasro@516
|
16 los ficheros binarios que Mercurial esté siguiendo. Para controlar
|
igor@473
|
17 este comportamiento, vea las opciones \hgopt{diff}{-a} y
|
igor@473
|
18 \hgopt{diff}{--git}.
|
igor@402
|
19
|
igor@402
|
20 \subsection{Options}
|
igor@402
|
21
|
igor@402
|
22 \loptref{diff}{nodates}
|
igor@402
|
23
|
igor@473
|
24 Omite la fecha y hora cuando se muestran los encabezados de las
|
igor@473
|
25 diferencias.
|
igor@402
|
26
|
igor@402
|
27 \optref{diff}{B}{ignore-blank-lines}
|
igor@402
|
28
|
igor@473
|
29 No imprime los cambios que solamente insertan o eliminan líneas en
|
igor@473
|
30 blanco. Una línea que contiene espacios en blanco no se considera
|
igor@473
|
31 como una línea en blanco.
|
igor@402
|
32
|
igor@402
|
33 \optref{diff}{I}{include}
|
igor@402
|
34
|
igor@473
|
35 Incluye ficheros y directorios cuyos nombres coinciden con los
|
igor@473
|
36 patrones elegidos.
|
igor@402
|
37
|
igor@402
|
38 \optref{diff}{X}{exclude}
|
igor@402
|
39
|
igor@473
|
40 Excluye los ficheros y directorios cuyos nombres coinciden con los
|
igor@473
|
41 patrones elegidos.
|
igor@402
|
42
|
igor@402
|
43 \optref{diff}{a}{text}
|
igor@402
|
44
|
igor@473
|
45 Si no especifica esta opción, \hgcmd{diff} no mostrará las diferencias
|
igor@473
|
46 de los ficheros que detecte como binarios. Al especificar \hgopt{diff}{-a}
|
igor@473
|
47 se forza a \hgcmd{diff} a tratar los ficheros como texto, y generar
|
igor@473
|
48 diferencias para todos.
|
igor@402
|
49
|
igor@473
|
50 Esta opción es útil para los ficherso que son ``texto en mayor
|
igor@473
|
51 medida'' pero que tienen caracteres NUL. Si lo usa en ficheros que
|
igor@473
|
52 contienen muchos datos binarios, la salida será incomprensible.
|
igor@402
|
53
|
igor@402
|
54 \optref{diff}{b}{ignore-space-change}
|
igor@402
|
55
|
igor@473
|
56 No imprime si el único cambio que en la línea es la cantidad de
|
igor@473
|
57 espacio en blanco.
|
igor@402
|
58
|
igor@402
|
59 \optref{diff}{g}{git}
|
igor@402
|
60
|
igor@473
|
61 Mostrar diferencias compatibles con \command{git}. XXX reference a format
|
igor@402
|
62 description.
|
igor@402
|
63
|
igor@402
|
64 \optref{diff}{p}{show-function}
|
igor@402
|
65
|
igor@473
|
66 Mostrar el nombre de la función que contiene el código en una porción
|
igor@473
|
67 del encabzado usando una heurística simple. Esta funcionalidad se
|
igor@473
|
68 habilita de forma predeterminada, así que la opción \hgopt{diff}{-p}
|
igor@473
|
69 no tiene efectos a menos que cambie el valor de
|
igor@473
|
70 \rcitem{diff}{showfunc} en la configuración, como en el ejemplo
|
igor@473
|
71 siguiente.
|
igor@402
|
72 \interaction{cmdref.diff-p}
|
igor@402
|
73
|
igor@402
|
74 \optref{diff}{r}{rev}
|
igor@402
|
75
|
igor@473
|
76 Especifique una o más revisiones para comparar. La orden \hgcmd{diff}
|
igor@473
|
77 acepta hasta dos opciones \hgopt{diff}{-r} para especificar las
|
igor@473
|
78 revisiones a comparar.
|
igor@402
|
79
|
igor@402
|
80 \begin{enumerate}
|
igor@402
|
81 \setcounter{enumi}{0}
|
igor@473
|
82 \item Despliega las diferencias entre la revisión padre y del directorio
|
igor@473
|
83 de trabajo.
|
igor@473
|
84 \item Despliega las diferencias entre el conjunto de cambios
|
igor@473
|
85 especificados y el directorio de trabajo.
|
igor@473
|
86 \item Despliega las diferencias entre dos conjuntos de cambios
|
igor@473
|
87 especificados.
|
igor@402
|
88 \end{enumerate}
|
igor@402
|
89
|
igor@473
|
90 Puede especificar dos revisiones usando o bien sea las opciones
|
igor@473
|
91 \hgopt{diff}{-r} o la notación de rango. Por ejemplo, las dos
|
igor@473
|
92 especificaciones de revisiones a continuación son equivalentes:
|
igor@402
|
93 \begin{codesample2}
|
igor@402
|
94 hg diff -r 10 -r 20
|
igor@402
|
95 hg diff -r10:20
|
igor@402
|
96 \end{codesample2}
|
igor@402
|
97
|
igor@473
|
98 Cuando especifica dos revisiones, esto tiene significado para
|
igor@473
|
99 Mercurial. Esto significa que \hgcmdargs{diff}{-r10:20} producirá un
|
igor@473
|
100 diff que transformará los ficheros desde los contenidos en la revisión
|
igor@473
|
101 10 a los contenidos de la revisión 20, mientras que
|
igor@473
|
102 \hgcmdargs{diff}{-r20:10} significa lo opuesto: el diff que
|
igor@473
|
103 transformaría los contenidos de los ficheros de la revisión 20 a los
|
igor@473
|
104 contenidos de la revisión 10. No puede invertir el orden de esta
|
igor@473
|
105 forma si está haciendo un diff frente al directorio de trabajo.
|
igor@402
|
106
|
igor@402
|
107 \optref{diff}{w}{ignore-all-space}
|
igor@402
|
108
|
igor@473
|
109 \cmdref{version}{imprime la información de versión y derechos de reproducción}
|
igor@402
|
110
|
igor@473
|
111 Esta orden despliega la versión de Mercurial que está usando, y su
|
igor@473
|
112 nota de derechos de reproducción. Hay cuatro clases de cadenas de
|
igor@473
|
113 versión posibles:
|
igor@402
|
114 \begin{itemize}
|
igor@473
|
115 \item La cadena ``\texttt{unknown}''. Esta versión de Mercurial no fue
|
igor@473
|
116 construida en un repositorio de Mercurial, y no puede determinar su
|
igor@473
|
117 propia versión.
|
igor@473
|
118 \item Una cadena numérica corta, tal como ``\texttt{1.1}''. Esta es
|
igor@473
|
119 una construcción de una versión de Mercurial que se identifica con
|
igor@473
|
120 una etiqueta específica en el repositorio en el cual fue
|
jerojasro@520
|
121 armada (Esto no significa necesariamente que está ejecutando una
|
igor@473
|
122 versión oficial; alguien pudo haber añadido tal etiqueta a cualquier
|
igor@473
|
123 versión del repositorio en el cual armaron Mercurial).
|
igor@473
|
124 \item Una cadena hexadecimal, tal como ``\texttt{875489e31abe}''.
|
igor@473
|
125 Esta es una construcción de una revisión dada de Mercurial.
|
igor@473
|
126 \item Una cadena hexadecimal seguida por una fecha, tal como
|
igor@473
|
127 ``\texttt{875489e31abe+20070205}''. Esta construcción de la
|
igor@473
|
128 revisión de Mercurial fue la construcción de un repositorio que tuvo
|
igor@473
|
129 cambios locales que no han sido consignados.
|
igor@402
|
130 \end{itemize}
|
igor@402
|
131
|
igor@473
|
132 \subsection{Consejos y trucos}
|
igor@402
|
133
|
igor@473
|
134 \subsubsection{¿Por qué difieren los resultados de \hgcmd{diff} y
|
igor@473
|
135 \hgcmd{status}?}
|
igor@402
|
136 \label{cmdref:diff-vs-status}
|
igor@402
|
137
|
igor@473
|
138 Cuando ejecuta la orden \hgcmd{status}, verá una lista de ficheros
|
igor@473
|
139 para los cuales Mercurial almacenará cambios la próxima vez que
|
igor@473
|
140 consigne. Si ejecuta la orden \hgcmd{diff}, verá que imprime
|
igor@473
|
141 diferencias solamente para un \emph{subconjunto} de los ficheros que
|
igor@473
|
142 \hgcmd{status} liste. Hay dos posibles razones para este comportamiento:
|
igor@402
|
143
|
igor@473
|
144 La primera es que \hgcmd{status} imprime cierta clase de
|
igor@473
|
145 modificaciones que \hgcmd{diff} no despliega normalmente. La orden
|
igor@473
|
146 \hgcmd{diff} usualmente despliega diferencias unificadas, las cuales
|
igor@473
|
147 no tienen la habilidad de representar algunos cambios que Mercurial
|
igor@473
|
148 puede seguir. Lo más notable es que las diferencias tradicionales no
|
igor@473
|
149 pueden representar un cambio acerca de la ejecutabilidad de un
|
igor@473
|
150 fichero, pero Mercurial sí almacena esta información.
|
igor@402
|
151
|
igor@473
|
152 Si usa la opción \hgopt{diff}{--git} de \hgcmd{diff}, mostrará
|
igor@473
|
153 diferencias compatibles con \command{git} que \emph{pueden} desplegar
|
igor@473
|
154 esta información adicional.
|
igor@402
|
155
|
igor@473
|
156 La segunda razón posible para que \hgcmd{diff} esté imprimiendo
|
igor@473
|
157 diferencias para un subconjunto de ficheros de lo que muestra
|
igor@473
|
158 \hgcmd{status} es que si usted le invoca sin argumento alguno,
|
igor@473
|
159 \hgcmd{diff} imprime diferencias frente al primer padre del directorio
|
igor@473
|
160 de trabajo. Si ha ejecutado \hgcmd{merge} para fusionar dos conjuntos
|
igor@473
|
161 de cambios, pero no ha consignado aún los resultados de la fusión, su
|
jerojasro@520
|
162 directorio de trabajo tiene dos padres (use \hgcmd{parents} para
|
igor@473
|
163 verlos). Mientras que \hgcmd{status} imprime modificaciones relativas
|
igor@473
|
164 a \emph{ambos} padres después de una fusión que no se ha consignado,
|
igor@473
|
165 \hgcmd{diff} opera aún relativo solamente al primer padre. Puede
|
igor@473
|
166 lograr que imprima las diferencias relativas al segundo padre
|
igor@473
|
167 especificando tal padre con la opción \hgopt{diff}{-r}. No hay forma
|
igor@473
|
168 de hacer que imprima las diferencias relativas a los dos padres.
|
igor@402
|
169
|
igor@473
|
170 \subsubsection{Generar diferencias seguras en binarios}
|
igor@402
|
171
|
igor@473
|
172 Si usa la opción \hgopt{diff}{-a} para forzar que Mercurial imprima
|
igor@473
|
173 las diferencias de los ficheros que so o bien ``casi completamente
|
igor@473
|
174 texto'' o contienen muchos datos binarios, tales diferencias no pueden
|
igor@473
|
175 aplicarse subsecuentemente a la orden \hgcmd{import} de Mercurial o a
|
igor@473
|
176 la orden \command{patch} del sistema.
|
igor@402
|
177
|
igor@473
|
178 Si desea generar una diferencia de un fichero binario que es seguro
|
igor@473
|
179 para usarlo como entrada a la orden \hgcmd{import}, use la opción
|
igor@473
|
180 \hgcmd{diff}{--git} cuando genere el parche. La orden \command{patch}
|
igor@473
|
181 del sistema no puede tratar con parches binarios.
|
igor@402
|
182
|
igor@402
|
183 %%% Local Variables:
|
igor@402
|
184 %%% mode: latex
|
igor@402
|
185 %%% TeX-master: "00book"
|
igor@402
|
186 %%% End:
|