hgbook

annotate es/mq-ref.tex @ 890:2887b61fa4fe

Change fields to fieldsets in the Comment admin model. The 'date'
field isn't working properly for an unknown reason, so it has been
removed from the interface temporarily.
author dukebody <dukebody@gmail.com>
date Sun Oct 11 21:12:46 2009 +0200 (2009-10-11)
parents 9da096de3c52
children
rev   line source
igor@487 1 \chapter{Referencia de las Colas de Mercurial}
jerojasro@336 2 \label{chap:mqref}
jerojasro@336 3
igor@500 4 \section{Referencia de órdenes MQ}
jerojasro@336 5 \label{sec:mqref:cmdref}
jerojasro@336 6
igor@500 7 Si desea dar un vistazo a las órdenes que ofrece MQ, use la orden
jerojasro@336 8 \hgcmdargs{help}{mq}.
jerojasro@336 9
igor@487 10 \subsection{\hgxcmd{mq}{qapplied}---imprimir los parches aplicados}
igor@487 11
igor@487 12 La orden \hgxcmd{mq}{qapplied} imprime la pila actual de parches
igor@500 13 aplicados. Los parches se imprimen en orden de antigüedad, primero
igor@500 14 los más antiguos y después los más recientes, por lo tanto el último
igor@500 15 parche de la lista es el que está en el ``tope''.
igor@487 16
igor@487 17 \subsection{\hgxcmd{mq}{qcommit}---consignar cambios en la cola del repositorio}
igor@487 18
igor@487 19 La orden \hgxcmd{mq}{qcommit} consigna cualquier cambio sobresaliente
igor@487 20 en el repositorio \sdirname{.hg/patches}. Esta orden solamente
igor@487 21 funciona si el directorio \sdirname{.hg/patches} es un repositorio,
igor@500 22 p.e.~usted creó el directorio con
igor@500 23 \hgcmdargs{qinit}{\hgxopt{mq}{qinit}{-c}} o ejecutó
igor@500 24 \hgcmd{init} en el directorio después de correr \hgxcmd{mq}{qinit}.
igor@487 25
igor@487 26 Esta orden es un atajo para \hgcmdargs{commit}{--cwd .hg/patches}.
igor@487 27
igor@488 28 \subsection{\hgxcmd{mq}{qdelete}---eliminar un parche del fichero
igor@487 29 \sfilename{series}}
igor@487 30
igor@487 31 La orden \hgxcmd{mq}{qdelete} elimina la entrada del fichero
igor@487 32 \sfilename{series} para el parche en el directorio
igor@487 33 \sdirname{.hg/patches}. No sca el parche si ha sido aplicado. De
igor@500 34 forma predeterminada no borra el fichero del parche; use la opción
igor@487 35 \hgxopt{mq}{qdel}{-f} para hacerlo.
igor@487 36
igor@487 37 Opciones:
igor@487 38 \begin{itemize}
igor@487 39 \item[\hgxopt{mq}{qdel}{-f}] Elimina el fichero del parche.
igor@487 40 \end{itemize}
igor@487 41
igor@500 42 \subsection{\hgxcmd{mq}{qdiff}---imprimir la diferencia del último
igor@487 43 parche aplicado}
igor@487 44
igor@500 45 La orden \hgxcmd{mq}{qdiff} imprime un diff del parche más
igor@487 46 recientemente aplicado. Es equivalente a \hgcmdargs{diff}{-r-2:-1}.
igor@487 47
igor@488 48 \subsection{\hgxcmd{mq}{qfold}---fusionar (``integrar'') varios parches en
igor@487 49 uno solo}
igor@487 50
igor@500 51 La orden \hgxcmd{mq}{qfold} fusiona muchos parches en el último parche
igor@500 52 aplicado, de tal forma que el último parche aplicado es la unión de
igor@500 53 todos los cambios de los parches en cuestión.
igor@487 54
igor@487 55 Los parches a fusionar no deben haber sido aplicados;
igor@500 56 \hgxcmd{mq}{qfold} saldrá indicando un error si alguno ha sido
igor@487 57 aplicado. El orden en el cual los parches se pliegan es
igor@487 58 significativo; \hgcmdargs{qfold}{a b} significa ``aplique el parche
igor@500 59 más reciente, seguido de \texttt{a}, y seguido de \texttt{b}''.
igor@487 60
igor@488 61 Los comentarios de los parches integrados se colocan al final de los
igor@487 62 comentarios del parche destino, con cada bloque de comentarios
jerojasro@520 63 separado con tres asteriscos (``\texttt{*}''). Se usa la opción
igor@500 64 \hgxopt{mq}{qfold}{-e} para editar el mensaje de consignación para el
igor@500 65 conjunto de cambios/parches después de completarse el pliegue.
igor@500 66
igor@500 67 Opciones:
igor@500 68 \begin{itemize}
igor@500 69 \item[\hgxopt{mq}{qfold}{-e}] Edita el mensaje de consignación y la
igor@500 70 descripción del parche del parche que se ha integrado.
igor@487 71 \item[\hgxopt{mq}{qfold}{-l}] Usa los contenidos del fichero dado como
igor@500 72 el nuevo mensaje de consignación y descripción del parche para el
igor@488 73 parche a integrar.
igor@487 74 \item[\hgxopt{mq}{qfold}{-m}] Usa el texto dado como el mensaje de
igor@500 75 consignación y descripción del parche para el parche integrado.
igor@500 76 \end{itemize}
igor@500 77
igor@500 78 \subsection{\hgxcmd{mq}{qheader}---desplegar el encabezado/descripción
igor@488 79 de un parche}
igor@488 80
igor@500 81 La orden \hgxcmd{mq}{qheader} imprime el encabezado o descripción de
igor@500 82 un parche. De forma predeterminada, imprime el encabezado del último
igor@488 83 parche aplicado. Si se da un argumento, imprime el encabezado del
igor@488 84 parche referenciado.
igor@488 85
igor@488 86 \subsection{\hgxcmd{mq}{qimport}---importar el parche de un tercero en
igor@488 87 la cola}
igor@488 88
igor@500 89 La orden \hgxcmd{mq}{qimport} añade una entrada de un parche externo
igor@488 90 al fichero \sfilename{series} y copia el parche en el directorio
igor@500 91 \sdirname{.hg/patches}. Añade la entrada inmediatamente después del
igor@500 92 último parche aplicado, pero no introduce el parche.
igor@488 93
igor@488 94 Si el directorio \sdirname{.hg/patches} es un repositorio,
igor@500 95 \hgxcmd{mq}{qimport} automáticamente hace un \hgcmd{add} del parche
igor@488 96 importado.
igor@488 97
igor@488 98 \subsection{\hgxcmd{mq}{qinit}---preparar un repositorio para trabajar
igor@488 99 con MQ}
igor@488 100
igor@488 101 La orden \hgxcmd{mq}{qinit} prepara un repositorio para trabajar con
igor@488 102 MQ. Crea un directorio llamado \sdirname{.hg/patches}.
igor@488 103
igor@488 104 Opciones:
igor@488 105 \begin{itemize}
igor@488 106 \item[\hgxopt{mq}{qinit}{-c}] Crea \sdirname{.hg/patches} como un
igor@500 107 repositorio por sí mismo. También crea un fichero
igor@500 108 \sfilename{.hgignore} que ignorará el fichero \sfilename{status}.
igor@500 109 \end{itemize}
igor@500 110
igor@500 111 Cuando el directorio \sdirname{.hg/patches} es un repositorio, las órdenes
igor@488 112 \hgxcmd{mq}{qimport} y \hgxcmd{mq}{qnew} hacen \hgcmd{add}
igor@500 113 automáticamente a los parches nuevos.
igor@488 114
igor@488 115 \subsection{\hgxcmd{mq}{qnew}---crear un parche nuevo}
igor@488 116
igor@488 117 La orden \hgxcmd{mq}{qnew} crea un parche nuevo. Exige un argumento,
igor@500 118 el nombre que se usará para tal parche. El parche recién creado está
igor@500 119 vacío inicialmente. Se añade al fichero \sfilename{series} después
igor@500 120 del último parche aplicado, y se introduce en el tope de ese parche.
igor@488 121
igor@488 122 Si \hgxcmd{mq}{qnew} encuentra ficheros modificados en el directorio
igor@500 123 de trabajo, rehusará crear un parche nuevo a meos que se emplee
jerojasro@520 124 \hgxopt{mq}{qnew}{-f} la opción (ver más adelante). Este
igor@500 125 comportamiento le permite hacer \hgxcmd{mq}{qrefresh} al último parche
igor@488 126 aplicado antes de aplicar un parche nuevo encima de este.
igor@488 127
igor@488 128 Opciones:
igor@488 129 \begin{itemize}
igor@488 130 \item[\hgxopt{mq}{qnew}{-f}] Crea un parche nuevo si los contenidos
igor@500 131 del directorio actual han sido modificados. Cualquier modificación
igor@500 132 significativa se añade al parche recientemente creado, de tal forma
igor@500 133 que al finalizar la orden, el directorio de trabajo no lucirá
igor@488 134 modificado.
igor@488 135 \item[\hgxopt{mq}{qnew}{-m}] Usa el texto dado como el mensaje de
igor@500 136 consignación. Este texto se almacenará al principio del fichero del
igor@488 137 parche, antes de los datos del parche.
jerojasro@336 138 \end{itemize}
jerojasro@336 139
igor@500 140 \subsection{\hgxcmd{mq}{qnext}---imprimir el nombre del próximo parche}
igor@493 141
igor@493 142 La orden \hgxcmd{mq}{qnext} imprime el nombre del siguiente parche en
igor@500 143 el fichero \sfilename{series} a continuación del último parche
igor@500 144 aplicado. Este parche sería el próximo parche a aplicar si se
igor@493 145 ejecutara la orden \hgxcmd{mq}{qpush}.
igor@493 146
igor@493 147 \subsection{\hgxcmd{mq}{qpop}---sustraer parches de la pila}
igor@493 148
igor@493 149 La orden \hgxcmd{mq}{qpop} elimina los parches aplicados del tope de
igor@493 150 la pila de parches aplicados. De forma predeterminada solamente
igor@493 151 remueve un parche.
igor@493 152
igor@493 153 Esta orden elimina los conjuntos de cambios que representan los
igor@500 154 parches sustraídos del repositorio, y actualiza el directorio de
igor@493 155 trabajo para deshacer los efectos de los parches.
igor@493 156
igor@493 157 Esta orden toma un argumento opcional, que usa como el nombre o el
igor@500 158 índice del parche que desea sustraer. Si se da el nombre, sustraerá
igor@500 159 los parches hasta que el parche nombrado sea el último parche
igor@500 160 aplicado. Si se da un número, \hgxcmd{mq}{qpop} lo trata como un
igor@500 161 índice dentro del fichero \sfilename{series}, contando desde
jerojasro@520 162 cero (no cuenta las líneas vacías o aquellas que sean únicamente
igor@493 163 comentarios). Sustrae los parches hasta que el parche identificado
igor@500 164 por el índice sea el último parche aplicado.
igor@493 165
igor@493 166 La orden \hgxcmd{mq}{qpop} no lee o escribe parches en el fichero
igor@493 167 \sfilename{series}. \hgxcmd{mq}{qpop} se constituye por tanto en una
igor@493 168 forma segura de sustraer un parche del fichero \sfilename{series} o un
igor@493 169 parche que ha eliminado o renombrado completamente. En los dos
igor@500 170 últimos casos, use el nombre del parche tal como lo hizo cuando lo
igor@500 171 aplicó.
igor@500 172
igor@500 173 De forma predeterminada, la orden \hgxcmd{mq}{qpop} no sustraerá
igor@493 174 parche alguno si el directorio de trabajo ha sido modificado. Puede
igor@500 175 modificar este comportamiento con la opción \hgxopt{mq}{qpop}{-f}, que
igor@493 176 revierte todas las modificaciones del directorio de trabajo.
igor@493 177
igor@493 178 Opciones:
igor@493 179 \begin{itemize}
igor@493 180 \item[\hgxopt{mq}{qpop}{-a}] Sustrae todos los parches aplicados.
igor@493 181 Restaura el repositorio al estado antes de haber aplicado parche alguno.
igor@493 182 \item[\hgxopt{mq}{qpop}{-f}] Revertir forzadamente cualquier
igor@500 183 modificación del directorio de trabajo cuando se hace sustracciones.
igor@493 184 \item[\hgxopt{mq}{qpop}{-n}] Sustraer un parche de la cola dado un nombre.
igor@493 185 \end{itemize}
igor@493 186
igor@500 187 La orden \hgxcmd{mq}{qpop} elimina una línea del final del fichero
igor@493 188 \sfilename{status} por cada parche que se sustrae.
igor@493 189
igor@493 190 \subsection{\hgxcmd{mq}{qprev}---imprimir el nombre del parche anterior}
igor@493 191
igor@493 192 La orden \hgxcmd{mq}{qprev} imprime el nombre del parche en el fichero
igor@500 193 \sfilename{series} que está antes del último parche aplicado. Este
igor@500 194 se volverá el último parche aplicado si ejecuta \hgxcmd{mq}{qpop}.
igor@499 195
igor@499 196 \subsection{\hgxcmd{mq}{qpush}---introducir parches a la pila}
jerojasro@336 197 \label{sec:mqref:cmd:qpush}
jerojasro@336 198
igor@500 199 La orden \hgxcmd{mq}{qpush} añade parches a la pila. De forma
igor@500 200 predeterminada añade solamente un parche.
igor@499 201
igor@499 202 Esta orden crea un conjunto de cambios que representa cada parche
igor@499 203 aplicado y actualiza el directorio de trabajo aplicando los efectos de
igor@499 204 los parches.
igor@499 205
igor@499 206 Los datos predeterminados cuando se crea un conjunto de cambios
igor@499 207 corresponde a:
igor@499 208 \begin{itemize}
igor@500 209 \item La fecha de consignación y zona horaria corresponden a la hora
igor@499 210 actual de la zona. Dado que tales datos se usan para computar la
igor@499 211 identidad de un conjunto de cambios, significa que si hace
igor@499 212 \hgxcmd{mq}{qpop} a un parche y \hgxcmd{mq}{qpush} de nuevo, el
igor@500 213 conjunto de cambios que introduzca tendrá una identidad distinta a
igor@499 214 la del conjunto de cambios que sustrajo.
igor@499 215 \item El autor es el mismo que el predeterminado usado por la orden
igor@499 216 \hgcmd{commit}.
igor@500 217 \item El mensaje de consignación es cualquier texto del fichero del
igor@499 218 parche que viene antes del primer encabezado del diff. Si no hay
igor@499 219 tal texto, un mensaje predeterminado se sua para identificar el
igor@499 220 nombre del parche.
igor@499 221 \end{itemize}
igor@499 222 Su un parche contiene un encabezado de parche de Mercurial (XXX add
igor@500 223 link), la información en el encabezado del parche tiene precedencia
igor@499 224 sobre el predeterminado.
igor@499 225
igor@499 226 Opciones:
igor@499 227 \begin{itemize}
igor@499 228 \item[\hgxopt{mq}{qpush}{-a}] Introduce todos los parches que no han
igor@499 229 sido aplicados del fichero \sfilename{series} hasta que no haya nada
igor@500 230 más para introducir.
igor@500 231 \item[\hgxopt{mq}{qpush}{-l}] Añade el nombre del parche al final del
igor@500 232 mensaje de consignación
igor@499 233 \item[\hgxopt{mq}{qpush}{-m}] Si un parche no se aplica limpiamente,
igor@499 234 usa la entrada para un parche en otra cola almacenada para computar
igor@500 235 los parámetros en una fusión de tres, y aplica una fusión de tres
igor@500 236 fuentes usando la maquinaria usual de Mercurial. Usa la resolución
igor@500 237 de la fusión como el contenido del parche nuevo.
igor@500 238 \item[\hgxopt{mq}{qpush}{-n}] Usa la cola mencionada si se está
igor@500 239 fusionando en la introducción.
igor@499 240 \end{itemize}
igor@499 241
igor@499 242 La orden \hgxcmd{mq}{qpush} lee, pero no modifica el fichero
igor@500 243 \sfilename{series}. Añade al final del fichero \hgcmd{status} una
igor@500 244 línea por cada parche que se introduce.
igor@500 245
igor@500 246 \subsection{\hgxcmd{mq}{qrefresh}---actualiza el último parche aplicado}
igor@500 247
igor@500 248 La orden \hgxcmd{mq}{qrefresh} actualiza el último parche aplicado.
igor@500 249 Modifica el parche, elimina el último conjunto de cambios que
igor@500 250 representó el parche, y crea un nuevo conjunto de cambios para
igor@499 251 representar el parche modificado.
igor@499 252
igor@499 253 La orden \hgxcmd{mq}{qrefresh} busca las siguientes modificaciones:
igor@499 254 \begin{itemize}
igor@500 255 \item Los cambios al mensaje de consignación, p.e.~el texto antes del
igor@499 256 primer encabezado de diff en el fichero del parche, se replejan en
igor@499 257 el nuevo conjunto de cambios que representa el parche.
igor@499 258 \item Las modificaciones a los ficheros a los que se les da
igor@500 259 seguimiento en el directorio de trabajo se añade al parche.
jerojasro@516 260 \item Los cambios a los ficheros a los que se les da seguimiento con
igor@499 261 \hgcmd{add}, \hgcmd{copy}, \hgcmd{remove}, o \hgcmd{rename}. Se
igor@500 262 añaden al parche los ficheros añadidos, copiados y renombrados,
igor@499 263 mientras que los ficheros eliminados y las fuentes renombradas se
igor@499 264 eliminan.
igor@499 265 \end{itemize}
igor@499 266
igor@499 267 Incluso si \hgxcmd{mq}{qrefresh} no detecta cambios, de todas maneras
igor@499 268 recrea el conjunto de cambios que representa el cambio. Esto causa
igor@499 269 que la identidad del conjunto de cambios difiera del conjunto de
igor@500 270 cambios previo que identificó al parche.
igor@500 271
igor@500 272 Opciones:
igor@500 273 \begin{itemize}
igor@500 274 \item[\hgxopt{mq}{qrefresh}{-e}] Modificar la descripción de la
igor@500 275 consignación y el parche con el editor de texto preferido.
igor@500 276 \item[\hgxopt{mq}{qrefresh}{-m}] Modificar el mensaje de consignación
igor@500 277 y la descripción del parche con el texto dado.
igor@500 278 \item[\hgxopt{mq}{qrefresh}{-l}] Modificar el mensaje de consignación
igor@500 279 y la descripción del parche con el texto del fichero dado.
igor@499 280 \end{itemize}
igor@499 281
igor@499 282 \subsection{\hgxcmd{mq}{qrename}---renombrar un parche}
igor@499 283
igor@499 284 La orden \hgxcmd{mq}{qrename} renombra un parche y cambia la entrada
igor@499 285 del parche en el fichero \sfilename{series}.
igor@499 286
igor@500 287 Con un argumento sencillo, \hgxcmd{mq}{qrename} renombra el último
igor@499 288 parche aplicado. Con dos argumentos, renombra el primer argumento con
igor@499 289 el segundo.
igor@499 290
igor@499 291 \subsection{\hgxcmd{mq}{qrestore}---restaurar el estado almacenado de
igor@499 292 la cola}
jerojasro@336 293
jerojasro@336 294 XXX No idea what this does.
jerojasro@336 295
igor@499 296 \subsection{\hgxcmd{mq}{qsave}---almacena el estado actual de la cola}
jerojasro@336 297
jerojasro@336 298 XXX Likewise.
jerojasro@336 299
igor@499 300 \subsection{\hgxcmd{mq}{qseries}---imprime la serie completa de parches}
igor@499 301
igor@499 302 La orden \hgxcmd{mq}{qseries} imprime la serie completa de parches del
igor@499 303 fichero \sfilename{series}. Imprime solamente los nombres de los
igor@500 304 parches sin las líneas en blanco o comentarios. Imprime primero el
igor@500 305 primero y de último, el último aplicado.
igor@499 306
igor@499 307 \subsection{\hgxcmd{mq}{qtop}---imprime el nombre del parche actual}
igor@499 308
igor@500 309 \hgxcmd{mq}{qtop} imprime el nombre del último parche aplicado.
igor@500 310
igor@500 311 \subsection{\hgxcmd{mq}{qunapplied}---imprimir los parches que aún no
igor@499 312 se han aplicado}
igor@499 313
igor@499 314 La orden \hgxcmd{mq}{qunapplied} imprime los nombres de los parches
igor@500 315 del fichero \sfilename{series} que todavía no han sido aplicados. Los
igor@500 316 imprime de acuerdo al orden en el cual serían introducidos.
igor@500 317
igor@500 318 \subsection{\hgcmd{strip}---remover una revisión y sus descendientes}
igor@500 319
igor@500 320 La orden \hgcmd{strip} remueve una revisión, y todos sus descendientes
igor@499 321 del repositorio. Deshace los efectos de las revisiones removidas del
igor@499 322 repositorio, y actualiza el directorio de trabajo hasta el primer
igor@500 323 padre de la revisión removida.
igor@499 324
igor@499 325 La orden \hgcmd{strip} almacena una copia de segurida de los conjuntos
igor@499 326 de cambios en un agrupamiento, de forma tal que puedan ser reaplicados
igor@500 327 en caso de que se hayan removido por equivocación.
igor@499 328
igor@499 329 Opciones:
igor@499 330 \begin{itemize}
igor@499 331 \item[\hgopt{strip}{-b}] Almacenar conjuntos de cambios no
igor@499 332 relacionados que se han mezclado con los conjuntos de cambios que
igor@500 333 están en franjas con el agrupamiento de copia de seguridad.
igor@499 334 \item[\hgopt{strip}{-f}] Si una rama tiene varias ramas principales
igor@499 335 remueve todos los frentes. XXX This should be renamed, y usa
igor@499 336 \texttt{-f} para desagrupar revisiones cuando hay cambios pendientes.
igor@499 337 \item[\hgopt{strip}{-n}] No almacene la copia de seguridad agrupada.
igor@499 338 \end{itemize}
igor@499 339
igor@499 340 \section{Referencia de ficheros de MQ}
igor@499 341
igor@499 342 \subsection{El fichero \sfilename{series}}
igor@499 343
igor@499 344 El fichero \sfilename{series} contiene una lista de los nombres de
igor@499 345 todos los parches que MQ puede aplicar. Se representa como una lista
igor@500 346 de nombres, uno por línea. Se ignora el espacio en blanco al
igor@499 347 principio y al final.
igor@499 348
igor@500 349 Las líneas pueden contener comentario. Un comentario comienza con el
igor@500 350 caracter ``\texttt{\#}'', y va hasta el final de la línea. Se ignoran
igor@500 351 las líneas vacías y las que solamente contengan comentarios.
igor@500 352
igor@500 353 En algún momento podría editar el fichero \sfilename{series} a mano,
igor@500 354 por tal motivo se admiten comentarios y líneas en blanco como se
igor@499 355 menciono anteriormente. Por ejemplo, puede poner en comentario un
igor@500 356 parche temporalmente y \hgxcmd{mq}{qpush} omitirá tal parche cuando
igor@500 357 los aplique. También puede cambiar el orden en el cual se aplican los
igor@499 358 parches, reordenando las entradas en el fichero \sfilename{series}.
igor@499 359
igor@500 360 También es posible colocar el fichero \sfilename{series} bajo control
igor@500 361 de revisiones; también es favorable colocar todos los parches que refiera
igor@499 362 bajo control de revisiones. Si crea un directorio de parches con la
igor@500 363 opción \hgxopt{mq}{qinit}{-c} de \hgxcmd{mq}{qinit}, esto se hará
igor@500 364 automáticamente.
igor@499 365
igor@499 366 \subsection{El fichero \sfilename{status}}
igor@499 367
igor@499 368 El fichero \sfilename{status} contiene los nombres y los hashes de los
igor@499 369 conjuntos de cambios de todos los parches que MQ ha aplicado. A
igor@500 370 diferencia del fichero \sfilename{series}, este NO ha sido diseñado
igor@500 371 para ser editado. No debería colocar este fichero bajo el control de
igor@499 372 revisiones o modificarlo de forma alguna. MQ lo usa estrictamente
igor@500 373 para administración interna.
jerojasro@336 374
jerojasro@336 375 %%% Local Variables:
jerojasro@336 376 %%% mode: latex
jerojasro@336 377 %%% TeX-master: "00book"
jerojasro@336 378 %%% End: