Conceitos Fundamentais
- Git: Sistema de Controle de Versão Distribuído (DVCS). Ferramenta que rastreia e gerencia todas as alterações feitas nos arquivos de um projeto ao longo do tempo. Permite voltar no tempo e colaborar.
- GitHub: Plataforma online que hospeda repositórios Git remotos. Serve para backup do código e facilita a colaboração em equipe.
- Repositório: Uma pasta no seu computador que o Git está monitorando. Contém uma subpasta oculta crucial chamada
.git/
.
- Branches (Ramificações): Linhas de desenvolvimento independentes que permitem trabalhar em funcionalidades ou correções isoladamente, sem afetar a linha principal do código (
main
ou master
).
- Commit: Uma "fotografia" do estado do seu projeto em um determinado momento. Cada commit registra as alterações, o autor e uma mensagem descritiva.
- Staging Area (Área de Preparação): Uma área intermediária onde você seleciona e organiza as mudanças que deseja incluir no próximo commit.
- Merge: O processo de unir as mudanças de uma branch em outra.
- Conflito de Merge: Ocorre quando o Git não consegue combinar automaticamente as mudanças de duas branches e precisa da intervenção humana para resolver as divergências.
Comandos Essenciais do Git
git config --list --global
- Função: Lista todas as configurações globais do Git, como seu nome de usuário e e-mail.
git init
- Função: Inicializa um novo repositório Git na pasta atual, criando a subpasta
.git/
.
git clone <URL_DO_REPOSITORIO>
- Função: Baixa uma cópia completa de um repositório Git existente de um serviço remoto (como o GitHub) para o seu computador. Já configura o
.git/
e a conexão remota.
git remote -v
- Função: Lista as conexões com repositórios remotos. Mostra os apelidos (ex:
origin
) e os URLs usados para baixar (fetch
) e enviar (push
) dados.
git status
- Função: Mostra o estado atual do seu repositório: quais arquivos foram modificados, quais são novos (untracked), e quais estão preparados para o commit (staged).
git add <NOME_DO_ARQUIVO> | .
- Função: Adiciona um arquivo específico ou todos os arquivos modificados/novos (com
.
) para a staging area, preparando-os para o próximo commit.
git commit -m "SUA MENSAGEM"
- Função: Salva as mudanças que estão na staging area no histórico do repositório local. A mensagem deve ser concisa e descritiva (ex: "feat: Adiciona funcionalidade de login").
git push origin <NOME_DA_BRANCH>
- Função: Envia os commits do seu repositório local para o repositório remoto (GitHub).
- Use
git push -u origin <NOME_DA_BRANCH>
no primeiro push de uma nova branch para definir o upstream.
git pull origin <NOME_DA_BRANCH>
- Função: Baixa as últimas atualizações do repositório remoto para a sua branch local e tenta mesclá-las automaticamente.