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.
-
Abre la 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://nombre de host/USERNAME/REPOSITORY-NAME
-
Cambia el directorio de trabajo actual por tu repositorio clonado.
$ cd REPOSITORY-NAME
-
Para filtrar la subcarpeta desde el resto de los archivos en el repositorio, ejecuta
git filter-branch
, proporcionando esta información:-
FOLDER-NAME
: la carpeta dentro de tu proyecto desde la que desearías crear un repositorio separado.Sugerencia: los usuarios de Windows deberían utilizar
/
para delimitar carpetas. -
BRANCH-NAME
: la rama por defecto de tu proyecto actual, por ejemplo,master
(principal) ogh-pages
.$ git filter-branch --prune-empty --subdirectory-filter FOLDER-NAME BRANCH-NAME # 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 subcarpeta.
-
-
Crea un nuevo repositorio en GitHub Enterprise.
-
En la parte superior de la página nueva Quick Setup del repositorio GitHub Enterprise, haz clic en para copiar la URL del repositorio remoto.
Sugerencia: Para obtener información sobre la diferencia entre las URL HTTPS y SSH consulta "¿Qué URL remota debería usar?"
-
Verifica el nombre remoto existente para tu repositorio. Por ejemplo,
origin
oupstream
son dos de las opciones comunes.$ git remote -v > origin https://nombre de host/USERNAME/REPOSITORY-NAME.git (fetch) > origin https://nombre de host/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://nombre de host/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://nombre de host/USERNAME/NEW-REPOSITORY-NAME.git (fetch) > origin https://nombre de host/USERNAME/NEW-REPOSITORY-NAME.git (push)
-
Sube tus cambios al nuevo repositorio en GitHub Enterprise.
git push -u origin BRANCH-NAME