Este es mi repositorio Git:
https://github.com/benqzq/ulcwe
Tiene un directorio llamado local
y quiero cambiar su nombre a otro nombre (por ejemplo, de local
a xyz
).
Cambiarlo a través de la GUI de GitHub manualmente es una pesadilla ya que tengo que cambiar el nombre del directorio para cada archivo por separado (GitHub aún no ha incluido una funcionalidad de "cambio de nombre del directorio", lo creas o no).
Después de instalar Git, probé este comando:
git remote https://github.com/benqzq/ulcwe && git mv local xyz && exit
Si bien no recibí ningún mensaje para mi contraseña de GitHub, recibí este error:
fatal: Not a git repository (or any parent up to mount point /mnt/c)
Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).
Sé que el objetivo de Git es descargar un proyecto, cambiarlo, probarlo y luego enviarlo al proveedor de alojamiento (GitHub en este caso), pero solo para cambiar un directorio, deseo una operación directa. ¿Es posible incluso con Git?
¿Debería usar otro programa tal vez?
Respuestas:
El mensaje de error fatal indica que estás trabajando desde un lugar que no es un clon de tu repositorio git. Entonces, comencemos clonando el repositorio git primero:
Luego ingrésalo:
y renombra el directorio:
Para que el cambio sea compartible, debe confirmarlo:
Ahora puede empujarlo a su repositorio remoto de git:
y verá el cambio en la interfaz de GitHub.
fuente
No, no hay forma de hacerlo como una operación directa debido a la forma en que está estructurado git.
La forma en que funciona git es que almacena una copia de todo el repositorio, incluido todo el historial, en cada ubicación.
Github, Bitbucket o cualquier otro proveedor de alojamiento es esencialmente una copia más de su repositorio git, con una bonita interfaz web en la parte superior, que se trata como una fuente central de verdad en la mayoría de los flujos de trabajo, sin embargo, la utilidad git no lo sabe.
Los cambios se rastrean como confirmaciones. Supongo que por
direct operation
, te refieres a una forma de cambiar el nombre de la carpeta sin crear una confirmación. Si bien esto es posible reescribiendo el historial, no lo recomendaría, especialmente si hay varias personas / máquinas con copias del repositorio git, ya que esto puede generar inconsistencias.La forma más fácil de cambiar el nombre de una carpeta en un repositorio de git sería clonarla localmente
Si ya tiene una copia local del repositorio, extráigala para asegurarse de que está actualizado con el repositorio remoto
Realice los cambios que necesita localmente
Que github debería agregar automáticamente al área de preparación. Entonces debe comprometerse e impulsar estos cambios.
Esto confirmará el cambio en su repositorio local, luego empujará estos cambios a la copia remota del repositorio, en este caso, Github.
fuente
git clone --depth
Es posible cambiar el nombre de un directorio sin clonar el repositorio, utilizando la API de GitHub. No conozco ninguna implementación.
Fuente: /programming//a/31567094/370786
fuente