hgbook
annotate es/filenames.tex @ 514:db12ab3b3b25
corrected some typos on the title page.
translated a couple of index entries
translated a couple of index entries
author | Javier Rojas <jerojasro@devnull.li> |
---|---|
date | Sun Jan 18 19:45:33 2009 -0500 (2009-01-18) |
parents | c847605eb2a9 |
children | 9da096de3c52 |
rev | line source |
---|---|
igor@402 | 1 \chapter{File names and pattern matching} |
igor@402 | 2 \label{chap:names} |
igor@402 | 3 |
jerojasro@430 | 4 Mercurial provee mecanismos que le permiten trabajar con nombres de |
jerojasro@430 | 5 ficheros en una manera consistente y expresiva. |
jerojasro@430 | 6 |
jerojasro@430 | 7 \section{Nombrado de ficheros simple} |
jerojasro@430 | 8 |
jerojasro@430 | 9 % TODO traducción literal de "under the hood". revisar |
jerojasro@430 | 10 Mercurial usa un mecanismo unificado ``bajo el capó'' para manejar |
jerojasro@430 | 11 nombres de ficheros. Cada comando se comporta de manera uniforme con |
jerojasro@430 | 12 respecto a los nombres de fichero. La manera en que los comandos |
jerojasro@430 | 13 operan con nombres de fichero es la siguiente. |
jerojasro@430 | 14 |
jerojasro@430 | 15 Si usted especifica explícitamente nombres reales de ficheros en la |
jerojasro@430 | 16 línea de comandos, Mercurial opera únicamente sobre dichos ficheros, |
jerojasro@430 | 17 como usted esperaría. |
igor@402 | 18 \interaction{filenames.files} |
igor@402 | 19 |
jerojasro@430 | 20 Cuando usted provee el nombre de un directorio, Mercurial interpreta |
jerojasro@430 | 21 eso como ``opere en cada fichero en este directorio y sus |
jerojasro@430 | 22 subdirectorios''. Mercurial va por todos los ficheros y subdirectorios |
jerojasro@430 | 23 de un directorio en orden alfabético. Cuando encuentra un |
jerojasro@430 | 24 subdirectorio, lo recorrerá antes de continuar con el directorio |
jerojasro@430 | 25 actual. |
igor@402 | 26 \interaction{filenames.dirs} |
igor@402 | 27 |
jerojasro@430 | 28 \section{Ejecución de comandos sin ningún nombre de fichero} |
jerojasro@430 | 29 |
jerojasro@430 | 30 Los comandos de Mercurial que trabajan con nombres de fichero tienen |
jerojasro@430 | 31 comportamientos por defecto adecuados cuando son utilizados sin pasar |
jerojasro@430 | 32 ningún patrón o nombre de fichero. El tipo de comportamiento depende |
jerojasro@431 | 33 de lo que haga el comando. Aquí presento unas cuantas reglas generales |
jerojasro@431 | 34 que usted puede usar para que es lo que probablemente hará un comando |
jerojasro@431 | 35 si usted no le pasa ningún nombre de fichero con el cual trabajar. |
igor@402 | 36 \begin{itemize} |
jerojasro@431 | 37 \item Muchos comandos operarán sobre el directorio de trabajo |
jerojasro@431 | 38 completo. Por ejemplo, esto es lo que hace el comando |
jerojasro@431 | 39 \hgcmd{add}, |
jerojasro@431 | 40 \item Si el comando tiene efectos difíciles o incluso imposibles de |
jerojasro@431 | 41 revertir, se le obligará a usted a proveer explícitamente al menos |
jerojasro@431 | 42 % TODO revisar ese "lo proteje a usted" |
jerojasro@431 | 43 un nombre o patrón (ver más abajo). Esto lo proteje a usted de, |
jerojasro@431 | 44 por ejemplo, borrar ficheros accidentalmente al ejecutar |
jerojasro@431 | 45 \hgcmd{remove} sin ningún argumento. |
igor@402 | 46 \end{itemize} |
igor@402 | 47 |
jerojasro@431 | 48 |
jerojasro@431 | 49 Es fácil evitar este comportamiento por defecto, si no es el adecuado |
jerojasro@431 | 50 para usted. Si un comando opera normalmente en todo el directorio de |
jerojasro@431 | 51 trabajo, usted puede llamarlo para que trabaje sólo en el directorio |
jerojasro@431 | 52 actual y sus subdirectorio pasándole el nombre ``\dirname{.}''. |
igor@402 | 53 \interaction{filenames.wdir-subdir} |
igor@402 | 54 |
jerojasro@431 | 55 Siguiendo la misma línea, algunos comandos normalmente imprimen las |
jerojasro@431 | 56 rutas de ficheros con respecto a la raíz del repositorio, aún si usted |
jerojasro@431 | 57 los llama dentro de un subdirectorio. Dichos comandos imprimirán las |
jerojasro@431 | 58 rutas de los ficheros respecto al directorio en que usted se encuentra |
jerojasro@431 | 59 si se les pasan nombres explícitos. Vamos a ejecutar el comando |
jerojasro@431 | 60 \hgcmd{status} desde un subdirectorio, y a hacer que opere en el |
jerojasro@431 | 61 directorio de trabajo completo, a la vez que todas las rutas de |
jerojasro@431 | 62 ficheros se imprimen respecto a nuestro subdirectorio, pasándole la |
jerojasro@431 | 63 salida del comando \hgcmd{root}. |
igor@402 | 64 \interaction{filenames.wdir-relname} |
igor@402 | 65 |
jerojasro@431 | 66 \section{Reportar que está pasando} |
jerojasro@431 | 67 |
jerojasro@431 | 68 El ejemplo con el comando \hgcmd{add} en la sección anterior ilustra |
jerojasro@431 | 69 algo más que es útil acerca de los comandos de Mercurial. Si un |
jerojasro@431 | 70 comando opera en un fichero que usted no pasó explícitamente en la |
jerojasro@431 | 71 línea de comandos, usualmente se imprimirá el nombre del fichero, para |
jerojasro@431 | 72 que usted no sea sorprendido por lo que sucede. |
jerojasro@431 | 73 |
jerojasro@431 | 74 Esto es el principio de \emph{mínima sorpresa}. Si usted se ha |
jerojasro@431 | 75 referido explícitamente a un fichero en la línea de comandos, no tiene |
jerojasro@431 | 76 mucho sentido repetir esto de vuelta a usted. Si Mercurial está |
jerojasro@431 | 77 actuando en un fichero \emph{implícitamente}, porque usted no pasó |
jerojasro@431 | 78 nombres, ni directorios, ni patrones (ver más abajo), lo más seguro es |
jerojasro@431 | 79 decirle a usted qué se está haciendo. |
jerojasro@431 | 80 |
jerojasro@431 | 81 Usted puede silenciar a los comandos que se comportan de esta manera |
jerojasro@431 | 82 usando la opción \hggopt{-q}. También puede hacer que impriman el |
jerojasro@431 | 83 nombre de cada fichero, aún aquellos que usted indicó explícitamente, |
jerojasro@431 | 84 usando la opción \hggopt{-v}. |
jerojasro@431 | 85 |
jerojasro@431 | 86 \section{Uso de patrones para identificar ficheros} |
jerojasro@431 | 87 |
jerojasro@431 | 88 Además de trabajar con nombres de ficheros y directorios, Mercurial le |
jerojasro@431 | 89 permite usar \emph{patrones} para identificar ficheros. El manejo de |
jerojasro@431 | 90 patrones de Mercurial es expresivo. |
jerojasro@431 | 91 |
jerojasro@431 | 92 En sistemas tipo Unix (Linux, MacOS, etc.), el trabajo de asociar |
jerojasro@431 | 93 patrones con nombres de ficheros recae sobre el intérprete de comandos. |
jerojasro@431 | 94 En estos sistemas, usted debe indicarle explícitamente a Mercurial que |
jerojasro@431 | 95 el nombre que se le pasa es un patrón. En Windows, el intérprete no |
jerojasro@431 | 96 expande los patrones, así que Mercurial identificará automáticamente |
jerojasro@431 | 97 los nombres que son patrones, y hará la expansión necesaria. |
jerojasro@431 | 98 |
jerojasro@431 | 99 Para pasar un patrón en vez de un nombre normal en la línea de |
jerojasro@431 | 100 comandos, el mecanismo es simple: |
igor@402 | 101 \begin{codesample2} |
igor@402 | 102 syntax:patternbody |
igor@402 | 103 \end{codesample2} |
jerojasro@431 | 104 Un patrón es identificado por una cadena de texto corta que indica qué |
jerojasro@431 | 105 tipo de patrón es, seguido por un dos puntos, seguido por el patrón en |
jerojasro@431 | 106 sí. |
jerojasro@431 | 107 |
jerojasro@431 | 108 Mercurial soporta dos tipos de sintaxis para patrones. La que se usa |
jerojasro@431 | 109 con más frecuencia se denomina \texttt{glob}\ndt{Grupo, colección, |
jerojasro@431 | 110 aglomeración.}; es el mismo tipo de asociación de patrones usado por |
jerojasro@431 | 111 el intérprete de Unix, y también debería ser familiar para los |
jerojasro@431 | 112 usuarios de la línea de comandos de Windows. |
jerojasro@431 | 113 |
jerojasro@431 | 114 Cuando Mercurial hace asociación automática de patrones en Windows, |
jerojasro@431 | 115 usa la sintaxis \texttt{glob}. Por esto, usted puede omitir el |
jerojasro@431 | 116 prefijo ``\texttt{glob:}'' en Windows, pero también es seguro usarlo. |
jerojasro@431 | 117 |
jerojasro@431 | 118 La sintaxis \texttt{re}\ndt{Expresiones regulares.} es más poderosa; |
jerojasro@431 | 119 le permite especificar patrones usando expresiones regulares, también |
jerojasro@431 | 120 conocidas como regexps. |
jerojasro@431 | 121 |
jerojasro@431 | 122 A propósito, en los ejemplos siguientes, por favor note que yo tengo |
jerojasro@431 | 123 el cuidado de rodear todos mis patrones con comillas sencillas, para |
jerojasro@431 | 124 que no sean expandidos por el intérprete antes de que Mercurial pueda |
jerojasro@431 | 125 verlos. |
jerojasro@431 | 126 |
jerojasro@431 | 127 \subsection{Patrones \texttt{glob} estilo intérprete} |
jerojasro@431 | 128 |
jerojasro@431 | 129 Este es un vistazo general de los tipos de patrones que usted puede |
jerojasro@431 | 130 usar cuando está usando asociación con patrone glob. |
jerojasro@431 | 131 |
jerojasro@431 | 132 La secuencia ``\texttt{*}'' se asocia con cualquier cadena, dentro de |
jerojasro@431 | 133 un único directorio. |
igor@402 | 134 \interaction{filenames.glob.star} |
igor@402 | 135 |
jerojasro@431 | 136 La secuencia ``\texttt{**}'' se asocia con cualquier cadena, y cruza los |
jerojasro@431 | 137 % TODO token |
jerojasro@431 | 138 límites de los directorios. No es una elemento estándar de los tokens |
jerojasro@431 | 139 de glob de Unix, pero es aceptado por varios intérpretes Unix |
jerojasro@431 | 140 populares, y es muy útil. |
igor@402 | 141 \interaction{filenames.glob.starstar} |
igor@402 | 142 |
jerojasro@431 | 143 La secuencia ``\texttt{?}'' se asocia con cualquier caracter sencillo. |
igor@402 | 144 \interaction{filenames.glob.question} |
igor@402 | 145 |
jerojasro@431 | 146 El caracter ``\texttt{[}'' marca el inicio de una \emph{clase de |
jerojasro@431 | 147 caracteres}. Ella se asocia con cualquier caracter sencillo dentro de |
jerojasro@431 | 148 la clase. La clase se finaliza con un caracter ``\texttt{]}''. Una |
jerojasro@431 | 149 clase puede contener múltiples \emph{rango}s de la forma |
jerojasro@431 | 150 ``\texttt{a-f}'', que en este caso es una abreviación para |
igor@402 | 151 ``\texttt{abcdef}''. |
igor@402 | 152 \interaction{filenames.glob.range} |
jerojasro@431 | 153 Si el primer caracter en aparecer después de ``\texttt{[}'' en la |
jerojasro@431 | 154 clase de caracteres es un ``\texttt{!}'', se \emph{niega} la clase, |
jerojasro@431 | 155 haciendo que se asocie con cualquier caracter sencillo que no se |
jerojasro@431 | 156 encuentre en la clase. |
igor@402 | 157 |
jerojasro@432 | 158 Un ``\texttt{\{}'' marca el inicio de un grupo de subpatrones, en |
jerojasro@432 | 159 donde todo el grupo es asociado si cualquier subpatrón en el grupo |
jerojasro@432 | 160 puede ser asociado. El caracter ``\texttt{,}'' separa los subpatrones, |
jerojasro@432 | 161 y el ``\texttt{\}}'' finaliza el grupo. |
igor@402 | 162 \interaction{filenames.glob.group} |
igor@402 | 163 |
jerojasro@432 | 164 \subsubsection{Cuidado!} |
jerojasro@432 | 165 |
jerojasro@432 | 166 No olvide que si usted desea asocia un patrón con cualquier |
jerojasro@432 | 167 directorio, no debería usar el elemento para asociar con cualquier |
jerojasro@432 | 168 cadena ``\texttt{*}'', ya que éste sólo generará asociaciones dentro |
jerojasro@432 | 169 de un solo directorio. En vez de eso, use el caracter para asociar con |
jerojasro@432 | 170 cualquier cadena ``\texttt{**}''. Este pequeño ejemplo ilustra la |
jerojasro@432 | 171 diferencia entre los dos. |
igor@402 | 172 \interaction{filenames.glob.star-starstar} |
igor@402 | 173 |
jerojasro@432 | 174 \subsection{Asociación con patrones de expresiones regulares \texttt{re}} |
igor@402 | 175 |
jerojasro@433 | 176 Mercurial acepta la misma sintaxis para expresiones regulares del |
jerojasro@433 | 177 lenguaje de programación Python (internamente se usa el motor de |
jerojasro@433 | 178 expresiones regulares de Python). Esta sintaxis está basada en la |
jerojasro@433 | 179 misma del lenguaje Perl, que es el dialecto más popular en uso |
jerojasro@433 | 180 (por ejemplo, también se usa en Java). |
jerojasro@433 | 181 |
jerojasro@433 | 182 No discutiré el dialecto de expresiones regulares de Mercurial en |
jerojasro@433 | 183 detalle aquí, ya que las mismas no son usadas frecuentemente. Las |
jerojasro@433 | 184 expresiones regulares al estilo Perl se encuentran documentadas |
jerojasro@433 | 185 exhaustivamente en una multitud de sitios web, y en muchos libros. |
jerojasro@433 | 186 En vez de eso, me enfocaré en unas cuantas cosas que usted debería |
jerojasro@433 | 187 conocer si tiene la necesidad de usar expresiones regulares en |
jerojasro@433 | 188 Mercurial. |
jerojasro@433 | 189 |
jerojasro@433 | 190 Una expresión regular es comparada contra un nombre de fichero |
jerojasro@433 | 191 completo, relativo a la raíz del repositorio. En otras palabras, aún |
jerojasro@433 | 192 si usted se encuentra en un subdirectorio \dirname{foo}, si desea |
jerojasro@433 | 193 asociar ficheros en este directorio, su patrón debe empezar con |
jerojasro@433 | 194 ``\texttt{foo/}''. |
igor@402 | 195 |
jerojasro@434 | 196 Un detalle a tener en cuenta es que, si le son familiares las |
jerojasro@434 | 197 expresiones regulares al estilo Perl, las de Mercurial están |
jerojasro@434 | 198 \emph{enraízadas}. Esto es, que la asociación de una expresión se hace |
jerojasro@434 | 199 desde el inicio de la cadena; no se buscan coincidencias dentro de la |
jerojasro@434 | 200 cadena. Para buscar coincidencias en cualquier sitio dentro de una |
jerojasro@434 | 201 cadena, empiece su patrón con un ``\texttt{.*}''. |
jerojasro@434 | 202 |
jerojasro@434 | 203 \section{Filtrado de archivos} |
jerojasro@434 | 204 |
jerojasro@434 | 205 Mercurial no sólo le provee una variedad de formas para especificar |
jerojasro@434 | 206 ficheros; le permite limitar aún más dichos ficheros mediante el uso |
jerojasro@434 | 207 de \emph{filtros}. Los comandos que operan con nombres de fichero |
jerojasro@434 | 208 aceptan dos opciones de filtrado. |
igor@402 | 209 \begin{itemize} |
jerojasro@434 | 210 \item \hggopt{-I}, o \hggopt{--include}, le permite especificar un |
jerojasro@434 | 211 patrón con el que deben coincidir los ficheros para ser |
jerojasro@434 | 212 procesados. |
jerojasro@434 | 213 \item \hggopt{-X}, o \hggopt{--exclude}, le brinda una manera de |
jerojasro@434 | 214 \emph{evitar} procesar ficheros, si coinciden con este patrón. |
igor@402 | 215 \end{itemize} |
jerojasro@434 | 216 Usted puede pasar múltiples veces las opciones \hggopt{-I} y |
jerojasro@434 | 217 \hggopt{-X} en la línea de comandos, e intercalarlos como desee. |
jerojasro@434 | 218 Por defecto, Mercurial interpreta los patrones que usted pase usando |
jerojasro@434 | 219 la sintaxis glob (pero usted puede usar expresiones regulares si lo |
jerojasro@434 | 220 necesita). |
jerojasro@434 | 221 |
jerojasro@434 | 222 El filtro \hggopt{-I} puede verse como un ``procese todos los ficheros |
jerojasro@434 | 223 que coincidan con este filtro''. |
igor@402 | 224 \interaction{filenames.filter.include} |
jerojasro@434 | 225 El filtro \hggopt{-X} puede verse como ``procese únicamente los |
jerojasro@434 | 226 ficheros que no coincidan con este patrón''. |
igor@402 | 227 \interaction{filenames.filter.exclude} |
igor@402 | 228 |
jerojasro@434 | 229 \section{Ignorar ficheros y directorios no deseados} |
igor@402 | 230 |
igor@402 | 231 XXX. |
igor@402 | 232 |
jerojasro@504 | 233 \section{Sensibilidad a mayúsculas} |
igor@402 | 234 \label{sec:names:case} |
igor@402 | 235 |
jerojasro@434 | 236 Si usted está trabajando en un ambiente de desarrollo mixto que |
jerojasro@434 | 237 contiene tanto sistemas Linux (u otro Unix) y sistemas Mac o Windows, |
jerojasro@434 | 238 debería tener en mente el hecho de que ellos tratan |
jerojasro@434 | 239 %TODO FIXME seguir desde aqui, no tengo idea de como traducir case |
jerojasro@434 | 240 %sensitivity |
igor@402 | 241 case (``N'' versus ``n'') of file names in incompatible ways. This is |
igor@402 | 242 not very likely to affect you, and it's easy to deal with if it does, |
igor@402 | 243 but it could surprise you if you don't know about it. |
igor@402 | 244 |
igor@402 | 245 Operating systems and filesystems differ in the way they handle the |
igor@402 | 246 \emph{case} of characters in file and directory names. There are |
igor@402 | 247 three common ways to handle case in names. |
igor@402 | 248 \begin{itemize} |
igor@402 | 249 \item Completely case insensitive. Uppercase and lowercase versions |
igor@402 | 250 of a letter are treated as identical, both when creating a file and |
igor@402 | 251 during subsequent accesses. This is common on older DOS-based |
igor@402 | 252 systems. |
igor@402 | 253 \item Case preserving, but insensitive. When a file or directory is |
igor@402 | 254 created, the case of its name is stored, and can be retrieved and |
igor@402 | 255 displayed by the operating system. When an existing file is being |
igor@402 | 256 looked up, its case is ignored. This is the standard arrangement on |
igor@402 | 257 Windows and MacOS. The names \filename{foo} and \filename{FoO} |
igor@402 | 258 identify the same file. This treatment of uppercase and lowercase |
igor@402 | 259 letters as interchangeable is also referred to as \emph{case |
igor@402 | 260 folding}. |
igor@402 | 261 \item Case sensitive. The case of a name is significant at all times. |
igor@402 | 262 The names \filename{foo} and {FoO} identify different files. This |
igor@402 | 263 is the way Linux and Unix systems normally work. |
igor@402 | 264 \end{itemize} |
igor@402 | 265 |
igor@402 | 266 On Unix-like systems, it is possible to have any or all of the above |
igor@402 | 267 ways of handling case in action at once. For example, if you use a |
igor@402 | 268 USB thumb drive formatted with a FAT32 filesystem on a Linux system, |
igor@402 | 269 Linux will handle names on that filesystem in a case preserving, but |
igor@402 | 270 insensitive, way. |
igor@402 | 271 |
jerojasro@434 | 272 \subsection{Almacenamiento portable y seguro de repositorios} |
jerojasro@434 | 273 |
jerojasro@434 | 274 El mecanismo de almacenamiento de los repositorios en Mercurial es |
jerojasro@504 | 275 \emph{robusto frente a sensibilidad/insensibilidad a mayúsculas}. Los nombres de |
jerojasro@434 | 276 fichero son traducidos para que puedan ser almacenados de manera |
jerojasro@504 | 277 segura tanto en sistemas sensibles como insensibles a mayúsculas. Esto |
jerojasro@434 | 278 significa que usted puede usar herramientas normales de copia de |
jerojasro@434 | 279 ficheros para transferir un repositorio Mercurial a, por ejemplo, una |
jerojasro@434 | 280 memoria USB, y trasladar de manera segura la memoria y el repositorio |
jerojasro@434 | 281 de ida y vuelta entre un Mac, un PC ejecutando Windows, y un sistema |
jerojasro@434 | 282 Linux |
jerojasro@434 | 283 |
jerojasro@434 | 284 \subsection{Detección de conflictos de mayúsculas/minúsculas} |
jerojasro@504 | 285 |
jerojasro@504 | 286 Al operar en el directorio de trabajo, Mercurial respeta la política |
jerojasro@504 | 287 de nombrado del sistema de archivos en que se encuentre el directorio |
jerojasro@504 | 288 de trabajo. Si el sistema de ficheros conserva las diferencias entre |
jerojasro@504 | 289 mayúsculas, pero no es sensible a ellas, Mercurial tratará los nombres |
jerojasro@504 | 290 que sólo difieren en mayúsculas como uno solo y el mismo. |
jerojasro@504 | 291 |
jerojasro@504 | 292 Un aspecto importante de este enfoque es que es posible consignar un |
jerojasro@504 | 293 conjunto de cambios en un sistema de ficheros sensible a mayúsculas |
jerojasro@504 | 294 (típicamente Linux o Unix) que terminará causando problemas para |
jerojasro@504 | 295 usuarios en sistemas insensibles a mayúsculas (usualmente en Windows o |
jerojasro@504 | 296 MacOS). Si un usuario de Linux consigna cambios a dos ficheros, uno de |
jerojasro@504 | 297 ellos llamado \filename{myfile.c} y el otro llamado \filename{MyFile.C}, |
jerojasro@504 | 298 ambos serán almacenados correctamente en el repositorio. Y serán |
jerojasro@504 | 299 representados correctamente como ficheros separados, en los |
jerojasro@504 | 300 directorios de trabajo de otros usuarios de Linux. |
jerojasro@504 | 301 |
jerojasro@504 | 302 Si un usuario de Windows o Mac jalan este cambio, no tendrán problemas |
jerojasro@504 | 303 inicialmente, porque el mecanismo de almacenamiento de Mercurial es |
jerojasro@504 | 304 seguro frente a sensibilidad/insensibilidad a mayúsculas. Sin embargo, |
jerojasro@504 | 305 una vez que ellos traten de actualizar (\hgcmd{update}) el directorio |
jerojasro@504 | 306 de trabajo con ese conjunto de cambios, o hagan fusión (\hgcmd{merge}) |
jerojasro@504 | 307 con ese conjunto de cambios, Mercurial verá el conflicto entre los dos |
jerojasro@504 | 308 nombres de fichero que el sistema de ficheros trataría como el mismo, |
jerojasro@504 | 309 e impedirá que ocurra la actualización o fusión. |
jerojasro@504 | 310 |
jerojasro@504 | 311 \subsection{Arreglar un conflicto de mayúsculas/minúsculas} |
jerojasro@504 | 312 |
jerojasro@504 | 313 Si usted está usando Windows o Mac en un entorno mixto donde algunos |
jerojasro@504 | 314 de sus colaboradores están usando Linux o Unix, y Mercurial reporta un |
jerojasro@504 | 315 conflicto de mayúsculas/minúsculas cuando usted trata de actualizar |
jerojasro@504 | 316 (\hgcmd{update}) o fusionar (\hgcmd{merge}), el procedimiento para |
jerojasro@504 | 317 arreglar el problema es simple. |
jerojasro@504 | 318 |
jerojasro@504 | 319 Sólo busque un sistema Linux o Unix cercano, clone el repositorio |
jerojasro@504 | 320 problema allí, y use el comando \hgcmd{rename} de Mercurial para |
jerojasro@504 | 321 cambiar los nombres de cualquiera de los ficheros o directorios |
jerojasro@504 | 322 problemáticos para que no causen más conflictos. Consigne este cambio, |
jerojasro@504 | 323 y jálelo (\hgcmd{pull}) o empújelo (\hgcmd{push}) a su sistema Windows |
jerojasro@504 | 324 o MacOS, y actualícelo (\hgcmd{update}) a la revisión con los nombres |
jerojasro@504 | 325 que ya no generan conflictos. |
jerojasro@504 | 326 |
jerojasro@504 | 327 El conjunto de cambios con los nombres con conflictos de |
jerojasro@504 | 328 mayúsculas/minúsculas permanecerá en el historial de su proyecto, y |
jerojasro@504 | 329 usted no podrá actualizar (\hgcmd{update}) su directorio de trabajo a |
jerojasro@504 | 330 dicho conjunto de cambios en un sistema Windows o MacOS, pero puede |
jerojasro@504 | 331 continuar el desarrollo sin impedimentos. |
igor@402 | 332 |
igor@402 | 333 \begin{note} |
jerojasro@504 | 334 Antes de la versión~0.9.3, Mercurial no usaba un mecanismos seguro |
jerojasro@504 | 335 frente a sensibilidad/insensibilidad a mayúsculas o minúsculas, y no |
jerojasro@504 | 336 detectaba los conflictos con nombres de ficheros. Si usted está |
jerojasro@504 | 337 usando una versión más antigua de Mercurial en Windows o MacOS, le |
jerojasro@504 | 338 recomiendo enérgicamente que se actualice. |
igor@402 | 339 \end{note} |
igor@402 | 340 |
igor@402 | 341 %%% Local Variables: |
igor@402 | 342 %%% mode: latex |
igor@402 | 343 %%% TeX-master: "00book" |
igor@402 | 344 %%% End: |