Git: Encontre o Comando Certo — Ferramenta Online Grátis
Encontre o comando Git exato para a sua situação. Clique em um cenário para ver o comando com explicação e avisos de segurança.
Referência de Situações e Comandos Git
O Git é poderoso, mas sua sintaxe pode ser difícil de memorizar, especialmente para operações menos comuns. Esta ferramenta mapeia situações reais do Git para os comandos exatos, com explicações claras e avisos para operações que não podem ser desfeitas.
Operações Destrutivas vs Seguras no Git
Algumas operações do Git são seguras e reversíveis (commits, branches, stashes). Outras alteram permanentemente o histórico ou podem causar perda de dados se usadas sem cuidado:
- Seguras: git stash, git branch, git checkout, git merge, git commit
- Requerem cuidado: git reset --hard, git push --force, git rebase (reescreve o histórico), git clean -fd
- Nunca faça em branches compartilhadas: force-push para main/master, rebase de commits públicos
Boas Práticas do Git
- Sempre crie uma branch antes de fazer alterações — nunca trabalhe diretamente na main
- Faça commits frequentes com mensagens claras e descritivas
- Use
git statusegit diffantes de fazer commit - Prefira
git revertem vez degit reset --hardem branches compartilhadas - Use
git stashpara salvar trabalho em andamento temporariamente
Perguntas Frequentes sobre Git
Como desfazer meu último commit no Git sem perder as alterações?
Use git reset --soft HEAD~1 para desfazer o último commit mantendo todas as alterações na área de staging. Use git reset HEAD~1 (modo mixed, o padrão) para desfazer o commit e remover as alterações do staging, mantendo-as no diretório de trabalho. Use git reset --hard HEAD~1 apenas se quiser descartar permanentemente todas as alterações — essa operação não pode ser desfeita.
Como deletar uma branch local e remota?
Delete uma branch local com git branch -d nome-da-branch (seguro, exige que a branch tenha sido mesclada) ou git branch -D nome-da-branch (forçar exclusão). Delete uma branch remota com git push origin --delete nome-da-branch. Para limpar referências remotas obsoletas, execute git fetch --prune ou git remote prune origin.
Qual é a diferença entre git merge e git rebase?
git merge cria um novo commit de merge unindo duas branches e preservando o histórico completo. git rebase reaplica seus commits sobre outra branch, produzindo um histórico linear mais limpo. Use merge para branches públicas e compartilhadas — é seguro e não destrutivo. Use rebase apenas em branches de feature locais antes de mesclar. Nunca faça rebase de commits já enviados para uma branch remota compartilhada — isso reescreve o histórico e causa problemas para outros colaboradores.
Como ver o que mudou no último commit?
Use git show para ver o diff do commit mais recente, incluindo mensagem, autor, data e patch completo. Para um resumo sem o diff completo, use git show --stat. Para comparar dois commits específicos, use git diff commit1 commit2. Para ver o histórico de um arquivo específico, use git log --follow -p -- nome-do-arquivo.
Ferramentas Relacionadas
- Calculadora SemVer — calcule incrementos de versão semântica e valide ranges do npm
- Gerador de Docker Compose — gere docker-compose.yml com redes, volumes e variáveis de ambiente
- Inspetor de Arquivo .ENV — detecte segredos expostos e gere arquivos .env.example seguros
- Testador de Regex — teste padrões regex com destaque em tempo real e explicações
- Ver todas as ferramentas gratuitas