Migrar um repositório GitHub LFS (Git Large File Storage) para o AWS CodeCommit
- Tan Shuai
- Desenvolvimento de Software
- 09 Feb, 2022
Recentemente migrei um dos meus repositórios do GitHub, que usa o Git Large File Storage (LFS), para o AWS CodeCommit. Pensei em compartilhar o processo com você caso esteja procurando fazer algo semelhante. Aqui está um guia passo a passo baseado na minha experiência.
Pré-requisitos
Antes de começarmos, certifique-se de ter essas ferramentas instaladas:
- Git
- Git LFS
- AWS CLI
Guia Passo a Passo
1. Clone o Repositório
Primeiro, clone seu repositório do GitHub usando a opção --mirror
. Isso cria um clone bare do repositório, incluindo todos os branches e tags.
git clone --mirror https://github.com/tanshuai/designs.git designs
2. Verifique os Arquivos LFS
Em seguida, liste todos os arquivos gerenciados pelo Git LFS para garantir que tudo esteja no lugar.
git lfs ls-files
Você deverá ver algo assim:
cadfa0bc9e * Brochure-Trifold-Draft.ai
af9b8b8a1c * Brochure-Trifold-English.ai
27bb5f4e61 * Brochure-Trifold.ai
3. Migre os Arquivos LFS
Agora, exporte os arquivos LFS. Este passo garante que eles façam parte do histórico do seu repositório.
git lfs migrate export --include="*.ai" --everything
Você verá algumas mensagens de progresso como estas:
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. Limpeza do LFS
Remova as informações de rastreamento do Git LFS e desinstale o Git LFS.
git lfs ls-files
git rm .gitattributes -f
git lfs uninstall
5. Faça Push para o AWS CodeCommit
Finalmente, faça push do seu repositório para o AWS CodeCommit.
git push https://git-codecommit.us-east-2.amazonaws.com/v1/repos/designs --all
Isso é tudo! Seguindo esses passos, consegui migrar meu repositório GitHub LFS para o AWS CodeCommit. Os arquivos grandes e o histórico do repositório foram preservados perfeitamente.
Conclusão
Migrar um repositório do GitHub que usa o Git LFS para o AWS CodeCommit é bem simples se você seguir os passos corretos. Se tiver alguma dúvida ou encontrar problemas, a documentação do AWS CodeCommit e a documentação do Git LFS são ótimos recursos.
Espero que você ache este guia útil. Feliz codificação!