Este checklist é um guia prático baseado no seu material de estudo. A ideia é executar o comando no terminal e marcar o checkbox aqui.
| Comando | O que faz? | Quando usar? |
|---|---|---|
git status |
Mostra o estado dos arquivos (modificados, novos, etc). | Sempre. Antes de qualquer comando. |
git add . |
Prepara todos os arquivos modificados para o commit. | Quando terminar uma etapa de trabalho. |
git add arquivo.txt |
Prepara apenas um arquivo específico. | Quando quiser separar mudanças em commits diferentes. |
git commit -m "msg" |
Salva as mudanças preparadas com uma mensagem. | Para registrar a evolução do código. |
git commit -am "msg" |
Atalho: Faz o add (em arquivos já rastreados) e commit de uma vez. |
Para agilizar mudanças simples em arquivos existentes. |
git push origin nome_da_branch |
Envia seus commits locais para o GitHub (nuvem). | Para salvar seu trabalho online ou compartilhar. |
git pull origin nome_da_branch |
Baixa e aplica as novidades do GitHub no seu PC. | Sempre antes de começar a trabalhar (para atualizar). |
git log --oneline |
Mostra o histórico resumido (Hash + Mensagem). | Para ver o ID dos commits rapidamente. |
| Comando | O que faz? |
|---|---|
git checkout -b nome |
Cria uma nova branch e já entra nela. |
git checkout nome |
Troca para uma branch existente. |
git branch |
Lista todas as branches locais. |
git branch -d nome |
Deleta uma branch de forma segura (só funciona se já tiver feito merge). |
git branch -D nome |
Força a deleção (apaga mesmo sem merge). Cuidado! |
git merge nome_da_branch |
Funde a branch nome_da_branch na branch onde você está agora. |
| Comando | O que faz? | Cenário de uso |
|---|---|---|
git checkout -- arquivo |
Desfaz alterações não salvas num arquivo. | "Editei errado e quero voltar como estava antes". |
git rm --cached arquivo |
Tira o arquivo do commit (stage) mas mantém no PC. | "Adicionei o .env sem querer no git add". |
git commit --amend |
Adiciona mudanças ao último commit ou muda a mensagem. | "Esqueci de incluir um arquivo no último commit". |
git reset --soft HEAD~1 |
Desfaz o último commit, mas mantém seus arquivos prontos para commitar de novo. | "A mensagem ficou ruim" ou "Faltou algo". |
git reset --hard HEAD~1 |
PERIGO: Apaga o último commit e destrói as alterações. | "Quero jogar fora tudo o que fiz no último commit". |
git revert ID_COMMIT |
Cria um commit novo que faz o inverso do commit escolhido. | "O commit antigo quebrou o sistema, preciso anular ele". |
| Comando | O que faz? |
|---|---|
git stash |
Guarda alterações "na gaveta" (memória temporária) e limpa o código. |
git stash pop |
Tira as alterações da gaveta e aplica de volta. |
git cherry-pick ID |
Copia um commit específico de outra branch para a sua. |
git rebase -i HEAD~3 |
Abre uma "máquina do tempo" para editar/renomear os últimos 3 commits. |
Use esses prefixos para deixar o histórico organizado.
| Tipo | Significado | Exemplo |
|---|---|---|
| feat: | Nova funcionalidade para o usuário. | feat: adiciona botão de login |
| fix: | Correção de bugs. | fix: corrige erro de validação |
| docs: | Mudança apenas na documentação. | docs: atualiza readme |
| style: | Formatação (espaços, ponto e vírgula). Não muda lógica. | style: identação do css |
| refactor: | Melhoria de código (performance/limpeza) sem mudar função. | refactor: simplifica função de soma |
| test: | Adição ou correção de testes. | test: adiciona teste unitário |
| chore: | Tarefas de manutenção (build, configs, pacotes). | chore: atualiza versão do node |
| Branch | Padrão de Nome | Finalidade |
|---|---|---|
| Feature | feature/nome-da-feature |
Desenvolver algo novo. Sai da develop. |
| Hotfix | hotfix/nome-do-erro |
Correção urgente. Sai da main. |
| Release | release/v1.0.0 |
Preparação para versão final. |
Comandos: config, init, remote
- Tarefa 01: Configure seu nome:
git config --global user.name "Seu Nome". - Tarefa 02: Configure seu e-mail:
git config --global user.email "seu@email.com". - Tarefa 03: Conecte ao GitHub (caso tenha criado o repo localmente primeiro):
git remote add origin URL_DO_SEU_REPO. - Tarefa 04: Verifique se tudo está certo:
git config --list. - Tarefa 05: Essa parte é OPCIONAL caso nao prefira a Tarefa 05 -> Realize o Fork desse repositório para o seu GitHub
- Tarefa 06: Pegue a URL SSH desse repositório para clonar em sua máquina local e digite no terminal de sua máquina:
git clone URL_SSH_DO_SEU_REPO
Comandos: checkout -b, add, commit, push, status
- Tarefa 07 (Padrão Git Flow): Crie antes uma branch e já entre nela com nome
developusando o comandogit checkout -b develope suba essa nova branch para o seu GitHub comgit push -u origin develop. - Tarefa 08: Crie outra branch dentro da branch
developcom o nomefeature/criar-index. - Tarefa 09: Crie um arquivo
index.html. Rodegit statuspara vê-lo como "Untracked". - Tarefa 10: Adicione apenas este arquivo:
git add index.html. - Tarefa 11: Faça o commit:
git commit -m "Feat: Cria index.html". - Tarefa 12: Modifique o
index.html(adicione qualquer texto). - Tarefa 13: Use o comando "combo" para adicionar e comitar de uma vez:
git commit -am "Update: Atualiza index via combo". - Tarefa 14: Envie as alterações da develop para o GitHub:
git push origin feature/criar-index. - Tarefa 15: Vá para o GitHup e na página do Repositório e crie um Pull Request e faça o merge e apague a branch
feature/criar-indexno GitHub e no repositório local de sua máquina faça o checkout para a branchdevelope em seguida apague a branchfeature/criar-indexdo seu repositório local com git branch -dfeature/criar-index.
Comandos: checkout --, reset, revert, rm --cached
- Tarefa 16 (Desfazer alteração): Modifique o
index.htmlnovamente (escreva algo errado). Não faça commit. - Tarefa 17: Desfaça essa alteração voltando o arquivo ao estado original:
git checkout -- index.html(ougit restore index.html). - Tarefa 18 (Commit Chore): Crie um arquivo
.gitignore(pode deixar vazio por enquanto). Faça o commit usando o padrão:- Mensagem:
git commit -m "chore: create gitignore file"
- Mensagem:
- Tarefa 19 (Ignorar arquivo): Crie um arquivo
.envcom uma senha falsa. - Tarefa 20: Adicione ele sem querer ao stage:
git add .env. - Tarefa 21: Remova ele do stage sem apagar do computador:
git rm --cached .env. (Depois adicione ao.gitignore). - Tarefa 22 (Reset Soft): Faça um commit qualquer. Depois, desfaça esse commit mantendo os arquivos:
git reset --soft HEAD~1. - Tarefa 23 (Revert): Faça um novo commit. Agora, crie um "anti-commit" que anula ele sem apagar o histórico:
git revert HEAD.
Comandos: stash, stash list, stash pop
Cenário: Você está editando um arquivo, mas precisa trocar de branch urgente sem fazer commit de código incompleto.
- Tarefa 24: Faça uma edição no
index.htmlmas não faça commit. - Tarefa 25: Guarde essa mudança na "gaveta":
git stash. (O arquivo voltará ao estado anterior). - Tarefa 26: Verifique o que está guardado:
git stash list. - Tarefa 27: Recupere a mudança e limpe a gaveta:
git stash pop.
Se você chegou até aqui, você praticou os comandos essenciais listados no seu guia, incluindo instalação, fluxo básico, correções de erros e manipulação avançada de histórico.