Git clone sem espaço: era só editar um arquivo, mas tentaram transportar um depósito de 9 GB

Entenda o erro de espaço insuficiente, por que um repositório fica enorme e como mexer em um arquivo sem baixar tudo.

Ache as anomalias
Como usar os recursos de leitura

Ouvir lê o artigo em voz alta. A leitura rápida mostra trechos no ritmo escolhido. A prática de idiomas compara as traduções disponíveis. Salvar cria um favorito neste navegador, acessível na lista do player. O quebra-tijolos transforma as palavras do artigo em blocos para você quebrar.

Compartilhar este artigo

Compartilhar este artigo

Publicidade
Publicidade

Descrição: Entenda o erro de espaço insuficiente, por que um repositório fica enorme e como mexer em um arquivo sem baixar tudo.

Você só queria mudar algumas linhas. A ferramenta responde: “Not enough disk space to clone the repository”.

O código quebrou? Não. O aviso diz que o ambiente que receberia a cópia não tem espaço suficiente, e não que o repositório hospedado no GitHub foi apagado.

Em um caso real, a API do GitHub informava cerca de 9 GB de tamanho para o repositório. Pediu uma chave de fenda e chegaram com a loja de ferramentas inteira, balcão incluso.

O que dá para concluir

A tentativa de cópia esbarrou no armazenamento disponível. A mensagem sozinha não informa quantos gigabytes estavam livres, quanto já foi transferido nem se o peso vem dos arquivos atuais ou do histórico.

Os cerca de 9 GB são o tamanho arredondado informado pela API, não uma medição exata do clone local. Objetos baixados, arquivos extraídos e dados temporários podem ocupar espaços diferentes.

Como um repositório fica tão grande?

O Git guarda versões anteriores além do conteúdo atual. Imagens pesadas, backups e arquivos gerados no passado podem continuar no histórico. Se o projeto acumula textos, traduções, imagens e resultados de geração, o conjunto atual também pode crescer bastante.

É preciso medir o conteúdo atual e os objetos históricos para descobrir a origem do volume.

O GitHub apresenta recomendações de saúde dos repositórios, incluindo 10 GB como máximo recomendado para o tamanho em disco da pasta .git. Isso não significa bloqueio automático de clones aos 10 GB, nem garante que seja a mesma medida mostrada pela API.

Precisa de um arquivo? Não leve o depósito

Um ambiente novo pode resolver se o anterior estava cheio de arquivos temporários. Mas, quando a origem é grande, a falha pode voltar.

Para ler ou atualizar um arquivo específico, a API de arquivos do GitHub pode eliminar a necessidade de clonar tudo, desde que você tenha acesso.

Se precisar usar Git, uma alternativa é:

git clone --depth=1 --filter=blob:none --sparse REPOSITORY_URL

Assim, você limita o histórico recebido, adia o download de conteúdo e começa com menos caminhos extraídos. O comando não faz milagres: alguns arquivos ainda serão obtidos sob demanda e operações que exigem o histórico completo terão limitações.

O conserto que pode piorar tudo

Não apague nem reescreva o histórico no impulso. Isso pode afetar colaboradores, referências e automações. Meça o espaço livre, identifique os arquivos atuais e antigos que mais ocupam espaço e faça backup antes de qualquer limpeza destrutiva.

Moral da história

O trabalho era editar um arquivo. A operação planejada era mudar um depósito de 9 GB.

Se só precisa de uma peça, por que transportar a loja inteira? Às vezes, o problema não é o tamanho do disco. É a logística.

Fontes: recomendações do GitHub, arquivos grandes, documentação do Git clone.

Um passo além: Afiliados em um site com 12 idiomas: como gerenciar tudo em um só lugar, sem abrir uma conta em cada país

PublicidadeLivros sobre este tema

Este artigo contém links de afiliado (publicidade). Sobre a publicidade

Compartilhar este artigo

Se este artigo foi útil, você pode apoiar o site. Apoiar

Publicidade
Publicidade
Publicidade

Mais um? Algo divertido?

Já que você terminou: algumas histórias próximas e outras totalmente diferentes, mas divertidas.

  1. Assunto próximoFábrica de artigos com IAajuda a internet ou polui?
  2. 1.208 impressões deram US$ 0,11, mas 39 deram US$ 0,80. O que aconteceu?
  3. Totalmente diferente, mas divertido1 in 8 Billiono que é mais injusto no jogo e o que dá pra controlar?
  4. O que é a trend 1,000 Little Things do TikTok?Precisa listar mil momentos?
  5. Cochilou sem querer por 30 minutosisso tira o sono da noite?
  6. Decisão pequena não merece 30 minutoscomo reduzir risco e atrito

Para ler hoje

Cada um responde a uma pergunta que quem lê este artigo costuma ter em seguida.

Ver todos os artigosMais sobre Tecnologia

Encontrar outros artigos

Todos os artigos

Mendoi-chan

Quem mantém o site

Mendoi-chan

Transforma as dificuldades do trabalho e do dia a dia em estruturas claras e próximos passos práticos.