Skip to main content

Esta versión de GitHub Enterprise se discontinuará el 2023-01-18. No se realizarán lanzamientos de patch, ni siquiera para problemas de seguridad críticos. Para obtener rendimiento mejorado, seguridad mejorada y nuevas características, actualice a la versión más reciente de GitHub Enterprise. Para obtener ayuda con la actualización, póngase en contacto con el soporte técnico de GitHub Enterprise.

Dividir una subcarpeta en un nuevo repositorio

Puedes convertir una carpeta dentro de un repositorio de Git en un nuevo repositorio.

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.

  1. Abra TerminalTerminalGit Bash.

  2. Cambia el directorio de trabajo actual a la ubicación donde deseas crear tu nuevo repositorio.

  3. Clona el repositorio que contiene la subcarpeta.

    $ git clone https://hostname/USERNAME/REPOSITORY-NAME
  4. Cambia el directorio de trabajo actual por tu repositorio clonado.

    $ cd REPOSITORY-NAME
  5. Para aplicar un filtro que excluya la subcarpeta del resto de archivos del repositorio, instala git-filter-repo y ejecuta git filter-repo con los siguientes argumentos.

    • 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)

  6. Cree un repositorio en GitHub Enterprise Server.

  7. En la parte superior del nuevo repositorio, en la página Configuración rápida de your GitHub Enterprise Server instance, haz clic en para copiar la dirección URL del repositorio remoto.

    Copia el campo de URL de repositorio remoto

    Sugerencia: Para obtener información sobre la diferencia entre las direcciones URL HTTPS y SSH, consulte "Acerca de los repositorios remotos".

  8. Verifica el nombre remoto existente para tu repositorio. Por ejemplo, origin o upstream son dos opciones comunes.

    $ git remote -v
    > origin  https://hostname/USERNAME/REPOSITORY-NAME.git (fetch)
    > origin  https://hostname/USERNAME/REPOSITORY-NAME.git (push)
  9. 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
  10. 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)
  11. Sube tus cambios al nuevo repositorio en GitHub Enterprise Server.

    git push -u origin BRANCH-NAME