Creo que debería funcionar para copiar el directorio para cambiar el nombre a un nuevo directorio con el nombre deseado y eliminar el directorio de edad , y git add
, git commit
y push
todo. ¿Pero es esta la mejor manera?
655
Creo que debería funcionar para copiar el directorio para cambiar el nombre a un nuevo directorio con el nombre deseado y eliminar el directorio de edad , y git add
, git commit
y push
todo. ¿Pero es esta la mejor manera?
Respuestas:
Cambiar el nombre básico (o mover):
Renombrar mayúsculas y minúsculas, por ejemplo. de
casesensitive
a:CaseSensitive
debe usar dos pasos:( Más sobre mayúsculas y minúsculas en Git ... )
... seguido de commit y push sería la forma más sencilla de cambiar el nombre de un directorio en un repositorio git.
fuente
casesensitive
aCaseSensitive
, puede hacerlo de esta manera:git mv casesensitive Temp
y luegogit mv Temp CaseSensitive
git rm -rf --cached path/to/your/directories
a continuación, volver a agregar y comprometersegit config core.ignorecase false
y luego ejecutar los comandos en sucesión o de lo contrario, para la segunda parte obtendría unsource is empty
error.Si recibe este error: fatal: el cambio de nombre de 'nombre de carpeta' falló: argumento no válido
Prueba esto:
git mv foldername tempname && git mv tempname folderName
fuente
git mv foldername tempname
ygit mv tempname folderName
, que deberían funcionar en Windows.1. Cambie el nombre de una carpeta de carpeta antigua a carpeta nueva
2. Si la nueva carpeta ya está en su repositorio y desea anularla y usar: - force
No olvide agregar los cambios al índice y confirmarlos después de cambiar el nombre con git mv.
3. Cambiar el nombre de foldername a folderName en sistemas de archivos que no distinguen entre mayúsculas y minúsculas
El cambio de nombre simple con un comando mv normal (no git mv) no se reconocerá como un cambio de archivo desde git. Si lo prueba con el comando 'git mv' como en la siguiente línea
Si está utilizando un sistema de archivos que no distingue entre mayúsculas y minúsculas, por ejemplo, está en una Mac y no lo configuró para que distinga entre mayúsculas y minúsculas, recibirá un mensaje de error como este:
fatal: error al renombrar 'nombre de carpeta': argumento no válido
Y esto es lo que puede hacer para que funcione:
Esto divide el proceso de cambio de nombre cambiando el nombre de la carpeta al principio a un nombre de carpeta completamente diferente. Después de renombrarlo a un nombre de carpeta diferente, la carpeta finalmente puede renombrarse al nuevo nombre de carpeta. Después de esos 'git mv's, nuevamente, no olvides agregar y confirmar los cambios. Aunque probablemente esta no sea una técnica hermosa, funciona perfectamente bien. El sistema de archivos aún no reconocerá un cambio en los casos de letras, pero git lo hace debido a cambiarle el nombre a un nuevo nombre de carpeta, y eso es todo lo que queríamos :)
fuente
Puede cambiar el nombre del directorio utilizando el sistema de archivos. Entonces puedes hacer
git rm <old directory>
ygit add <new directory>
( página de ayuda ). Entonces puedes comprometerte y empujar.Git detectará que el contenido es el mismo y que es solo una operación de cambio de nombre, y aparecerá como una entrada de cambio de nombre en el historial. Puede verificar que este sea el caso antes de la confirmación utilizando
git status
fuente
Desde la aplicación web, creo que no puede, pero puede cambiar el nombre de todas las carpetas en Git Client, moverá sus archivos en las nuevas carpetas renombradas, luego se comprometerá y se enviará al repositorio remoto.
Tuve un problema muy similar: tuve que cambiar el nombre de diferentes carpetas de mayúsculas a minúsculas (como Abc -> abc), cambié el nombre de todas las carpetas con un nombre ficticio (como 'abc___') y luego me comprometí con el repositorio remoto, después de ¡Cambié el nombre de todas las carpetas al nombre original con minúsculas (como abc) y las tomó!
fuente
Lo resolví en dos pasos. Para cambiar el nombre de la carpeta usando el comando mv, necesita derechos para hacerlo, si no tiene el derecho, puede seguir estos pasos. Supongamos que desea cambiar el nombre de casos sensibles a Casesensitive.
Paso 1: Cambie el nombre de la carpeta (mayúsculas y minúsculas) a algo más del explorador. Por ejemplo, Rename casesensitive to folder1 confirma este cambio.
Paso 2: Cambie el nombre de esta carpeta recién nombrada (carpeta1) al nombre sensible a mayúsculas y minúsculas esperado (Casesensitive), por ejemplo. Cambie el nombre de la carpeta1 a Casesensitive. Comete este cambio.
fuente
Para cambiar el nombre de mayúsculas y minúsculas,
git mv somefolder someFolder
funcionó para mí antes, pero no lo hizo hoy por alguna razón. Así como una solución que he creado una nueva carpetatemp
, se trasladó todo el contenido desomefolder
dentrotemp
, borradosomefolder
, el cometidotemp
, entonces creadasomeFolder
, se trasladó todo el contenido detemp
dentrosomeFolder
, suprimidotemp
, comprometido y empujósomeFolder
y funcionó! Aparece comosomeFolder
en git.fuente
Simplemente cambie el nombre de la carpeta. git es un "rastreador de contenido", por lo que los hash SHA1 son los mismos y git sabe que debe cambiarle el nombre. Lo único que cambia es el árbol-objeto.
fuente