2012-10-06 22 views
21

He estado trabajando en un proyecto de desarrollo usando una máquina con Windows como servidor de prueba. Eventualmente, me gustaría que la versión "en vivo" termine en una máquina Linux. Mientras trataba de probar en la máquina Linux, se hizo evidente que necesitaba cambiar el caso de varios nombres de archivos, ya que Windows no hacía distinción entre mayúsculas y minúsculas, pero Linux no. Cuando cambié el nombre del archivo en Windows, TortoiseSVN reconoció que el archivo había cambiado y marcó mis carpetas de manera apropiada. Sin embargo, cuando traté de enviar mis cambios, TortoiseSVN no solo me dijo que no se habían realizado cambios, sino que revertía todos los cambios de nombre de archivo que había realizado en su caso original.Cambiando el caso del nombre de archivo con TortoiseSVN en Windows

Mi pregunta es, hay una manera sencilla de modificar el caso de nombre de archivo desde un PC con Windows y haga que los cambios aparecen en mi repositorio? Me gustaría evitar cualquier tipo de escenario de eliminación, compromiso, reemplazo, compromiso para mantener mi compromiso ordenado si es posible. ¡Gracias!

+1

¿Qué pasa con 'svn ren' (rename)? En TSvn, haga clic con el botón derecho en el archivo y elija 'Renombrar' en el menú contextual. –

Respuesta

21

Usa Renombra opción en Tortoise SVN en el menú emergente. Ver detalles here

Cuando cambió la caja de varios nombres de archivo, es decir, cambió los nombres de los archivos, se salieron de control de la versión, por eso el cliente SVN notó que los archivos que estaban bajo control de versión habían desaparecido (aparentemente eso sucedió porque el cliente SVN no fue informado correctamente).

+1

El uso de la opción Cambiar nombre en Tortoise funcionó muy bien. Estaba intentando cambiar el nombre del archivo en el Explorador de Windows. Gracias, ¡pum! –

+0

Estuve atascado en esto por un tiempo hasta que me di cuenta de que debes enviar la carpeta, no el archivo. ¡Vale la pena agregar eso! – Ewanw

+0

@Ewanw debe poder enviar los archivos seleccionados, así como toda la carpeta, esto depende del usuario. Esto es lo mismo si solo tiene "un cambio", pero en general, con la selección de archivos particulares, tendrá un mejor control sobre lo que se debe comprometer. – pmod

8

Descubrí que Tortoise SVN tiene una configuración para la reparación automática de cambios de nombre de archivo. Se establece en true de forma predeterminada, por lo que si solo cambias el caso de las letras en el nombre, se desharán tus cambios por ti ... silenciosamente y despiadadamente podría agregar una configuración predeterminada muy molesta en mi opinión.

De todos modos afortunadamente, si navegas a Configuración de TortoiseSVN-> Avanzado-> FixCaseRenames puedes cambiarlo a falso y ya no corregirá automáticamente los cambios del caso. Setting Location

+0

¡GRACIAS! Solo intentaba fusionar dos ramas y mis desarrolladores crearon la misma carpeta con diferentes letras mayúsculas. Estaba a punto de volverme loco. – Chriszuma

1

Si alguien busca la manera de hacer esto en SmartSVN en Windows (sistema operativo entre mayúsculas y minúsculas), los pasos son los siguientes:

  1. Seleccionar archivo en el navegador, en el menú Modificar -> Cambiar el nombre y el uso de un nombre temporal (por ejemplo, añadir X hasta el final del nombre de archivo), confirma los cambios
  2. Seleccionar archivo en el navegador, en el menú Modificar -> Cambiar nombre y usar el nombre de archivo correcto en el caso correcto, confirmó cambios

Sólo en tal caso el registro del archivo será salvado

Cuestiones relacionadas