🎯 Git
Em poucas palavras
O Git é um sistema de controle de versão distribuído. Ele funciona como uma “máquina do tempo” para o seu código, permitindo rastrear alterações, reverter erros e colaborar com outras pessoas sem sobrescrever o trabalho alheio.
📝 Notas e Desenvolvimento
- O Git não é a mesma coisa que GitHub (o primeiro é a ferramenta, o segundo é a plataforma de hospedagem).
- Quase todas as operações são locais, o que garante velocidade.
- O Git foca em snapshots (fotos do estado dos arquivos), não apenas em diferenças de linhas.
🔗 Conexões e Contexto
- Atlas: MdC - Tecnologia
- Notas Relacionadas:
📚 Referências e Fontes
- Documentação oficial: Git Documentation (Oficial)
- Vídeos Interessantes:
📂 Outros Conteúdos Preservados
🏗️ Fluxo de Trabalho (Lifecycle)
No Git, um arquivo passa por quatro estados principais:
- Untracked: Arquivo novo, o Git ainda não o “vê”.
- Unmodified/Modified: Arquivo rastreado que foi ou não alterado.
- Staged: Alterações marcadas para o próximo commit.
- Committed: Alterações salvas com segurança no banco de dados local.
💻 Comandos Essenciais
Configuração Inicial
git config --global user.name "Seu Nome"
git config --global user.email "[email protected]"
git init # Transforma a pasta atual em um repositórioO Ciclo Diário
git status # O comando mais importante: vê o estado atual
git add <arquivo> # Adiciona um arquivo ao Staging (preparação)
git add . # Adiciona TODOS os arquivos alterados
git commit -m "mensagem" # Salva o snapshot com uma descriçãoRamificações (Branches) e Colaboração
git branch -M main # Define a branch principal como 'main'
git checkout -b <nome> # Cria e muda para uma nova branch
git switch <nome> # Atalho moderno para mudar de branch
git merge <nome> # Une o histórico da branch <nome> à atualRemoto (Sincronização)
git remote add origin <url> # Conecta seu PC ao repositório online
git push -u origin main # Envia seus commits (o -u salva a preferência)
git pull # Traz as novidades do servidor e mescla no local
git clone <url> # Baixa um projeto inteiro pela primeira vez⚠️ Conflitos de Mesclagem (Merge Conflicts)
Ocorrem quando o Git não consegue decidir qual linha de código manter (ex: duas pessoas alteraram a mesma linha em branches diferentes).
Como ler o conflito:
<<<<<<< HEAD
B = 2 # Sua alteração (Local)
=======
B = 3 # Alteração que veio do Pull/Merge (Remoto/Outra Branch)
>>>>>>> hash_do_commitResolução:
- Abra o arquivo e escolha o que manter.
- Remova os marcadores (
<<<<,====,>>>>). - Salve o arquivo.
- Rode
git add .egit commitpara finalizar a mesclagem.
🔍 Histórico e Recuperação
git log --oneline: Exibe o histórico de forma resumida e elegante.git diff: Mostra exatamente o que foi alterado nos arquivos antes do commit.- Reset Hard:
git reset --hard <hash>— Cuidado! Apaga todas as alterações locais e volta para o commit especificado.