Git7 min

Git trabalha com snapshots, não apenas com diferenças

Entenda o modelo mental do Git, como cada commit registra um estado do projeto e por que isso facilita navegar pelo histórico.

Um retrato do projeto

O Git trata cada commit como uma referência para o estado completo dos arquivos rastreados naquele momento. Quando um arquivo não mudou, o sistema pode reaproveitar internamente o conteúdo existente em vez de duplicá-lo.

Pensar em snapshots ajuda a entender por que é simples comparar versões, criar branches e voltar a um ponto anterior.

As três áreas principais

O diretório de trabalho contém o que você está editando. A área de preparação, ou index, reúne exatamente o que entrará no próximo commit. O repositório guarda os commits já criados.

Comandos como git status e git diff mostram a passagem das alterações entre essas áreas.

Commits são pontos ligados

Cada commit registra metadados, uma árvore de arquivos e a referência ao commit anterior, salvo casos especiais. Esse encadeamento forma o histórico que branches e tags apontam.

Um branch é, essencialmente, um nome móvel para o commit mais recente daquela linha de trabalho.

Um modelo mental mais seguro

Antes de executar um comando, pergunte qual referência será movida, qual snapshot será criado e qual área será alterada. Essa leitura evita decorar receitas sem compreender o efeito.

Git fica menos misterioso quando o histórico é visto como uma sequência de estados identificáveis, não como uma pasta cheia de cópias.

Quer aplicar isso à sua empresa?

Explique o cenário e eu ajudo a transformar a necessidade em um projeto viável.

Conversar com Tadeu