Tan Shuai

Migrar un repositorio de GitHub LFS (Git Large File Storage) a AWS CodeCommit

Desarrollo de Software

Recientemente migré uno de mis repositorios de GitHub, que utiliza Git Large File Storage (LFS), a AWS CodeCommit. Pensé en compartir el proceso contigo por si deseas hacer algo similar. Aquí tienes una guía paso a paso basada en mi experiencia.

Requisitos previos

Antes de empezar, asegúrate de tener estas herramientas instaladas:

  • Git
  • Git LFS
  • AWS CLI

Guía paso a paso

1. Clonar el repositorio

Primero, clona tu repositorio de GitHub usando la opción --mirror. Esto crea una clonación bare del repositorio, incluyendo todas las ramas y etiquetas.

git clone --mirror https://github.com/tanshuai/designs.git designs

2. Verificar archivos LFS

A continuación, lista todos los archivos gestionados por Git LFS para asegurarte de que todo esté en su lugar.

git lfs ls-files

Deberías ver algo como esto:

cadfa0bc9e * Brochure-Trifold-Draft.ai
af9b8b8a1c * Brochure-Trifold-English.ai
27bb5f4e61 * Brochure-Trifold.ai

3. Migrar archivos LFS

Ahora, exporta los archivos LFS. Este paso asegura que sean parte del historial de tu repositorio.

git lfs migrate export --include="*.ai" --everything

Verás algunos mensajes de progreso como estos:

migrate: Sorting commits: ..., done.
migrate: Rewriting commits: 100% (20/20), done.
master 98a3c48d85... -> 82f8873b41...
migrate: Updating refs: ..., done.
migrate: checkout: ..., done.
prune: 3 local object(s), 0 retained, done.
cadfa0bc9e... (133 MB)
27bb5f4e61... (131 MB)
af9b8b8a1c... (130 MB), done.
prune: Deleting objects: 100% (3/3), done.

4. Limpiar LFS

Elimina la información de seguimiento de Git LFS y desinstala Git LFS.

git lfs ls-files
git rm .gitattributes -f
git lfs uninstall

5. Subir a AWS CodeCommit

Finalmente, sube tu repositorio a AWS CodeCommit.

git push https://git-codecommit.us-east-2.amazonaws.com/v1/repos/designs --all

¡Eso es todo! Siguiendo estos pasos, migré con éxito mi repositorio de GitHub LFS a AWS CodeCommit. Los archivos grandes y el historial del repositorio se conservaron perfectamente.

Conclusión

Migrar un repositorio de GitHub que utiliza Git LFS a AWS CodeCommit es bastante sencillo si sigues los pasos correctos. Si tienes alguna pregunta o encuentras problemas, la documentación de AWS CodeCommit y la documentación de Git LFS son excelentes recursos.

Espero que encuentres útil esta guía. ¡Feliz programación!