Si creas un nuevo clon del repositorio, no perderás ninguno de tus historiales o cambios de Git cuando divides una carpeta en un repositorio separado.
-
Abra TerminalTerminalGit Bash.
-
Cambia el directorio de trabajo actual a la ubicación donde deseas crear tu nuevo repositorio.
-
Clona el repositorio que contiene la subcarpeta.
$ git clone https://hostname/USERNAME/REPOSITORY-NAME
-
Cambia el directorio de trabajo actual por tu repositorio clonado.
$ cd REPOSITORY-NAME
-
Para filtrar la subcarpeta del resto de los archivos del repositorio, ejecute
git filter-repo
y proporcione esta información:FOLDER-NAME
: la carpeta dentro del proyecto en la que quiere crear un repositorio independiente.
Sugerencia: Los usuarios de Windows deben utilizar
/
para delimitar carpetas.$ git filter-repo --path FOLDER-NAME1/ --path FOLDER-NAME2/ # Filter the specified branch in your directory and remove empty commits > Rewrite 48dc599c80e20527ed902928085e7861e6b3cbe6 (89/89) > Ref 'refs/heads/BRANCH-NAME' was rewritten
El repositorio debería ahora únicamente contener archivos que estuvieron en tu(s) subcarpeta(s)
-
Cree un repositorio en GitHub Enterprise Server.
-
En la parte superior de tu repositorio nuevo, en la página de configuración rápida de your GitHub Enterprise Server instance, haz clic en para copiar la URL del repositorio remoto.
Sugerencia: Para obtener información sobre la diferencia entre las direcciones URL HTTPS y SSH, consulte "Acerca de los repositorios remotos".
-
Verifica el nombre remoto existente para tu repositorio. Por ejemplo,
origin
oupstream
son dos opciones comunes.$ git remote -v > origin https://hostname/USERNAME/REPOSITORY-NAME.git (fetch) > origin https://hostname/USERNAME/REPOSITORY-NAME.git (push)
-
Configura una URL remota nueva para tu nuevo repositorio utilizando el nombre remoto existente y la URL del repositorio remoto que copiaste en el paso 7.
git remote set-url origin https://hostname/USERNAME/NEW-REPOSITORY-NAME.git
-
Verifica que la URL remota haya cambiado con el nombre de tu nuevo repositorio.
$ git remote -v # Verify new remote URL > origin https://hostname/USERNAME/NEW-REPOSITORY-NAME.git (fetch) > origin https://hostname/USERNAME/NEW-REPOSITORY-NAME.git (push)
-
Sube tus cambios al nuevo repositorio en GitHub Enterprise Server.
git push -u origin BRANCH-NAME