Aprenda / Git e controle de versão

FundamentosAula 1 de 1410 min0% da trilha

Por que controle de versão

O problema que git resolve: histórico, colaboração e a possibilidade real de desfazer qualquer coisa.

Antes de git, o jeito comum de "versionar" um projeto era isso:

o problema
projeto/
projeto-final/
projeto-final-v2/
projeto-final-v2-CORRIGIDO/
projeto-final-USAR-ESSE/

Isso não escala — ninguém sabe o que mudou entre uma pasta e outra, não dá pra colaborar sem sobrescrever o trabalho de alguém, e "desfazer" significa procurar manualmente a pasta certa (se ela ainda existir).

O que git resolve

com git
Histórico completo    → toda mudança fica registrada, com autor, data e o que mudou exatamente
Reverter qualquer coisa → dá pra voltar pra qualquer ponto anterior, mesmo meses depois
Trabalhar em paralelo  → duas pessoas mexem no mesmo projeto sem sobrescrever uma a outra
Rastrear "quem mudou o quê" → cada linha de código tem um autor e um motivo (a mensagem do commit)

Git é local; GitHub é só um lugar pra hospedar

Uma confusão comum no início: git e GitHub não são a mesma coisa. Git é a ferramenta que roda na sua máquina, versiona seus arquivos localmente — funciona até sem internet. GitHub (ou GitLab, Bitbucket) é um serviço que hospeda uma cópia remota do seu repositório git, pra backup e colaboração. Você pode usar git sem nunca tocar no GitHub; não dá pra usar GitHub sem git por baixo.

Quiz rápido

Qual a relação entre git e GitHub?
Qual problema do 'projeto-final-v2-CORRIGIDO' o git resolve?