Guia passo a passo para iniciantes no Git — configuração, fluxo de trabalho local, trabalho com repositório remoto (GitHub) e uma tabela de comandos essenciais.
Este README foi escrito para alguém que nunca usou Git antes. Siga os passos na ordem indicada.
- Ter o Git instalado. Verifique com:
git --version- Ter uma conta no GitHub (https://github.com). Crie uma se necessário.
Configure seu nome de usuário e e-mail — estes serão usados em todos os commits:
git config --global user.name "Seu Nome"
git config --global user.email "seu.email@example.com"Verifique a configuração:
git config --global --listOpcional: configure o editor padrão usado pelo Git (ex.: VS Code):
git config --global core.editor "code --wait"Configure credenciais para que o Git lembre seu login (macOS recomenda usar o credential helper do sistema):
git config --global credential.helper osxkeychainPara autenticação com o GitHub recomenda-se usar SSH ou um token pessoal (PAT). Exemplo rápido com SSH:
ssh-keygen -t ed25519 -C "seu.email@example.com"
# Em seguida copie o conteúdo de ~/.ssh/id_ed25519.pub para as chaves SSH do GitHubSe você já tem uma pasta com arquivos e quer transformá-la em repositório Git local (sem remote):
cd /caminho/para/seu/projeto
git initIsso cria a pasta oculta .git. Agora adicione os arquivos e faça o primeiro commit:
git add .
git commit -m "Primeiro commit: adiciona projeto"Observação: tudo acima funciona 100% sem um servidor remoto. Você pode fazer commits, criar branches e voltar no histórico localmente.
Se quiser trabalhar com um repositório remoto (opcional) — por exemplo para backup, colaboração ou deploy — veja a seção "Trabalhando com remotes (opcional)".
- Atualize seu repositório local a partir do remoto:
git pull- Crie uma nova branch para trabalhar em algo:
git checkout -b minha-feature- Faça alterações nos arquivos. Quando estiver pronto, adicione e faça commit:
git add arquivo1 arquivo2
git commit -m "Descrição curta do que foi feito"- Envie sua branch para o remoto:
git push -u origin minha-feature- Abra um Pull Request (PR) no GitHub para revisar e mesclar sua branch na
main.
Adicionar um remoto chamado origin (quando você criou o repositório localmente e quer ligar ao GitHub):
git remote add origin git@github.com:usuario/repo.git
git push -u origin mainVer remotes configurados:
git remote -vQuando git pull informa que há conflitos, abra os arquivos afetados, procure marcas como <<<<<<< HEAD e escolha a versão correta. Depois:
git add arquivo-resolvido
git commit
# (ou git commit -m "Resolve conflito em ...")- Faça commits pequenos e com mensagens claras.
- Use branches para features e correções.
- Sincronize frequentemente (
git pull) para evitar muitos conflitos. - Adicione
.gitignorepara arquivos que não devem ir ao repositório (ex.:node_modules/,.env,*.log).
| Comando | O que faz | Exemplo de uso |
|---|---|---|
git init |
Inicializa um repositório Git local | git init |
git clone <url> |
Clona um repositório remoto | git clone git@github.com:usuario/repo.git |
git status |
Mostra o estado atual (arquivos modif./staged) | git status |
git add <arquivo> |
Adiciona arquivos ao índice (staging) | git add README.md |
git add . |
Adiciona todas as mudanças atuais | git add . |
git commit -m "mensagem" |
Cria um commit com as mudanças staged | git commit -m "Corrige bug X" |
git log |
Mostra histórico de commits | git log --oneline --graph |
git branch |
Lista branches locais | git branch |
git branch <nome> |
Cria uma nova branch | git branch minha-feature |
git checkout <branch> |
Muda para outra branch | git checkout main |
git checkout -b <branch> |
Cria e muda para nova branch | git checkout -b minha-feature |
git merge <branch> |
Mescla outra branch na atual | git merge minha-feature |
git pull |
Baixa e faz merge do remoto para local | git pull origin main |
git push |
Envia commits para o remoto | git push origin minha-feature |
git remote -v |
Mostra remotes configurados | git remote -v |
git reset HEAD <arquivo> |
Remove arquivo do staging (undo git add) |
git reset HEAD app.js |
git revert <commit> |
Reverte um commit criando novo commit | git revert abc1234 |
git reset --hard <commit> |
Volta o estado do branch para um commit (perigoso) | git reset --hard abc1234 |
git stash |
Guarda temporariamente mudanças não commitadas | git stash save "WIP" |
git stash pop |
Restaura o último stash | git stash pop |
- Criar um novo repositório local e subir para o GitHub:
mkdir meu-projeto
cd meu-projeto
git init
echo "# Meu Projeto" > README.md
git add .
git commit -m "Primeiro commit"
git remote add origin git@github.com:usuario/meu-projeto.git
git push -u origin main- Atualizar seu branch
mainlocal com o remoto e aplicar mudanças:
git checkout main
git pull origin main- Documentação oficial do Git: https://git-scm.com/docs
- Guia interativo: https://learngitbranching.js.org/
- Ajuda do Git local:
git help <comando>(ex.:git help commit)