Folha de Consulta de Comandos Git
Manual de referência completo de comandos Git, organizado por categoria para consulta rápida
Comandos Básicos(13)
Criar um novo repositório Git no diretório atual
Clonar um repositório remoto para local
Clone shallow, busca apenas o commit mais recente
Adicionar arquivo à área de staging
Adicionar todas as mudanças à área de staging
Commit staged changes
Modificar o último commit
Mostrar status atual do repositório
Mostrar mudanças não staged
Mostrar mudanças staged
Mostrar toda configuração
Definir nome de usuário global
Definir email global
Gerenciamento de Branch(14)
Listar todas as branches locais
Listar todas as branches (incluindo remotas)
Criar uma nova branch
Deletar uma branch
Renomear uma branch
Mudar para uma branch
Criar e mudar para nova branch
Mudar para uma branch (Git 2.23+)
Criar e mudar para nova branch (Git 2.23+)
Merge branch especificada na branch atual
Merge com um merge commit
Rebase branch atual na branch especificada
Continuar rebase após resolver conflitos
Aplicar commit específico na branch atual
Operações Remotas(10)
Mostrar detalhes do repositório remoto
Adicionar um repositório remoto
Buscar conteúdo mais recente do remoto
Buscar atualizações de todos os remotos
Buscar e merge branch remota
Buscar e rebase
Push para repositório remoto
Forçar push (use com cuidado)
Push e definir branch upstream
Deletar branch remota
Desfazer Mudanças(8)
Unstage um arquivo
Desfazer último commit, manter mudanças
Desfazer commit e staging, manter working directory
Desfazer commit e descartar todas as mudanças
Desfazer um commit (cria novo commit)
Restaurar arquivo do working directory (Git 2.23+)
Unstage arquivo (Git 2.23+)
Remover arquivos e diretórios não rastreados
Gerenciamento de Tags(6)
Listar todas as tags
Criar uma tag lightweight
Criar uma tag annotated
Deletar tag local
Push tag para remoto
Push todas as tags para remoto
Ver Histórico(7)
Mostrar histórico de commits
Mostrar histórico de commits compacto
Mostrar histórico de todas as branches como graph
Mostrar detalhes do commit
Mostrar histórico de modificação para cada linha
Mostrar todo histórico de operações
Iniciar binary search para commit problemático
Stash(7)
Stash mudanças atuais
Stash mudanças com mensagem
Listar todos os stashes
Aplicar e drop o stash mais recente
Aplicar stash sem drop
Drop o stash mais recente
Remover todos os stashes
O que é Git?
Git é um sistema de controle de versão distribuído criado por Linus Torvalds para gerenciar histórico de código de projeto. Suporta desenvolvimento colaborativo, rastreia cada mudança de código, e fornece gerenciamento de branch e rollback de versão.
Dominar comandos Git é essencial para cada desenvolvedor. Esta folha de consulta organiza os comandos Git mais usados por categoria para referência rápida e aprendizado.
Como Usar
Clique qualquer card de comando para copiar o comando. Use a caixa de busca para encontrar comandos específicos. Clique tabs de categoria para filtrar comandos por tipo.
Dicas Comuns
FAQ
Q: Qual a diferença entre git pull e git fetch?
A: git fetch apenas baixa atualizações remotas sem merge; git pull equals git fetch + git merge. É recomendado usar fetch primeiro para revisar mudanças antes de decidir como merge.
Q: Como desfazer o último commit?
A: Use git reset --soft HEAD~1 para desfazer commit mas manter mudanças; use git reset --hard HEAD~1 para completamente desfazer e descartar mudanças. Se já pushed, use git revert para segurança.
Q: Como resolver conflitos de merge?
A: Manualmente edite arquivos conflitantes para escolher qual conteúdo manter, então git add para marcar como resolvido, finalmente git commit para completar merge. Use git mergetool para resolução visual de conflitos.
Q: Qual a diferença entre git merge e git rebase?
A: merge cria um merge commit preservando histórico da branch; rebase move commits para ponta da branch target fazendo histórico mais linear. Use merge para branches compartilhadas, rebase para branches locais.
Q: Como remover um arquivo grande do histórico?
A: Use git filter-branch ou BFG Repo-Cleaner. Note que isso reescreve histórico requerendo force push.