2010-10-26 22 views
5

alt textCambiar nombre de carpeta en carriles - Git no me permite añadir a cometer

referencia a la imagen de arriba, he cambiado el nombre de la carpeta de nivel más bajo en el árbol. Por ejemplo, cambié "Chips" por "chips". Curiosamente, Git se niega a reconocer el comando siguiente cuando intento añadir a la confirmación:

git add public/images/chips/ 

La única manera de que pueda conseguirlo para agregar el archivo a la confirmación es mediante la adición de un archivo real en la subcarpeta.

¿Alguna idea de cómo manejarla?

+0

Así que mi solución final era: git add fichas -f/ – keruilin

Respuesta

3

En general, cuando el cambio de nombres de archivo o directorio, tendrá que utilizar la siguiente:

git mv oldfile newfile 

Esto le dirá git para agregar realmente los cambios para que pueda comprometerlos. Por lo tanto, trate de cambiar manualmente de nuevo con

mv chips Chips 

y luego ejecutar

git mv Chips chips 
+0

por lo que este es interesante ... no me deja cambiar desde Chips a patatas fritas ... pero le permitirá Me cambio de fichas al chip – keruilin

+0

Lo noté hace unos días. Parece ser que git-mv ignora cambios que son diferentes solo en el caso. – Jeremy

+0

@keruilin - ¿Estás en una caja de Windows? Esto no parece ser cierto en una máquina Linux. –

0

Rollback los cambios y ejecutar git mv Chips chips

0

¿Cómo se cambia el nombre de las carpetas? Siempre muevo/renombro archivos en mi repositorio usando git mv (git help mv). Pruebe mv volviendo a los archivos/carpetas a lo que git sabía que se veían, y luego use la versión de movimiento de git.

0

Probar git add -A. Esto detectará los renombrados/borrados que no se hicieron a través del git mv/git rm.

+0

No funcionó .... – keruilin

1

Esto es probablemente solo un problema cuando se trabaja con un sistema operativo que tiene sistemas de archivos que no distinguen entre mayúsculas y minúsculas, como OSX y Windows. Debería hacer el cambio de nombre en un sistema de archivos unix/sensible a mayúsculas/minúsculas: funcionará allí de cualquier manera (git mv o primero cambie el nombre, luego git add - detectará el movimiento).

Luego, de vuelta en su sistema sin distinción de mayúsculas y minúsculas, probablemente tendrá conflictos durante la extracción. Puede ser útil renombrar manualmente allí y probar de nuevo la extracción: git debería fusionar estos cambios correctamente (porque en realidad no hay ninguno si la confirmación no cambió nada más en ese directorio).

También puede solucionar esto con un truco avanzado de git y cambiar el nombre: renombrar primero a chips-tmp, confirmar, luego renombrar a chips, modificar su compromiso anterior. Solo entonces empuje hacia su repositorio de aguas arriba.

vistazo aquí:

1

Tenga en cuenta que, desde el 15 de marzo de 2013, se puede move or rename a file directly from GitHub.
Eso significa que, en su caso, podría cambiar el nombre de las carpetas en GitHub, luego clonar su repositorio en un repositorio local nuevo, con los nuevos nombres para dichas carpetas.

renaming

También puede mover archivos a completamente nuevas ubicaciones utilizando sólo el campo de nombre de archivo.
Para navegar hacia abajo en una carpeta, simplemente escriba el nombre de la carpeta en la que desea mover el archivo seguido de /.
¡La carpeta puede ser una que ya forma parte de su repositorio, o incluso puede ser una carpeta completamente nueva que aún no existe!

moving

Cuestiones relacionadas