Cómo mover un directorio al nuevo repositorio de Git con Historial de commit

Cómo mover un directorio al nuevo repositorio de Git con Historial de commit

Trabajando con un repositorio Git, es posible que deba mover un directorio específico a un nuevo repositorio. Si solo copia el contenido del directorio de un repositorio a otro repositorio, perderá el historial de confirmación. Así que siga este tutorial para eliminar un directorio a un nuevo repositorio de git para preservar el historial de confirmación.

En este tutorial, aprenderá a mover un directorio de un repositorio de git a un nuevo repositorio de git.

Mueva el directorio a un nuevo repositorio de git

Siga los pasos a continuación para mover una carpeta de un repositorio existente a un nuevo repositorio.

  1. En primer lugar, clona el repositorio principal que contiene un directorio para moverse.
    Git clon https: // github.com/username/primario-repo.git  
  2. Cambiar directorio al repositorio recién clonado
    nombre del repositorio de CD 
  3. A continuación, la opción Filter-Branch le permite reescribir el historial de revisión Git reescribiendo las ramas mencionadas en la línea de comando. Esto filtrará el subdirectorio desde el resto de los archivos en el repositorio actual.
    Git Filter-Branch --Prune-Epty --Subdirectory-Filter sub_directory_name Branch_name  

    Aquí:

    • Sub_directory_name: La ruta relativa al directorio dentro de los archivos del proyecto, debe separarse de otros.
    • Branch_name: Seleccione el nombre de la rama del que se filtrará el directorio, como "principal", "maestro", "desarrollar", etc.

    Una vez que el comando anterior se ejecute correctamente, verá que el directorio actual solo tiene archivos que estaban en el subdirectorio.

  4. Cree un nuevo repositorio en GitHub, GitLab o cualquier otro proveedor de GIT.
  5. Establezca la nueva URL como el origen del directorio actual. Este es el mismo directorio donde ha filtrado el código del repositorio de git anterior.
    Git Remote Set-URL Origin https: // github.com/username/new_repo_name.git  
  6. A continuación, verifique que las URL de origen GIT se hayan actualizado en el directorio actual.
    git remoto -v  

    Verá la siguiente salida:

    # Verifique la nueva URL remota> Origin https: // github.com/username/new_repo_name.git (fetch)> origen https: // github.com/username/new_repo_name.git (empuje) 
  7. Finalmente, presione todos los archivos al nuevo repositorio.
    git push -u origen branch_name  

Felicitaciones, ha copiado con éxito un directorio a un nuevo repositorio de Git.