Skip to content

Git cheat sheet em português

Este Git cheat sheet reúne os comandos do dia a dia, branches, stash e 14 receitas para desfazer erros em uma página para imprimir, usando os comandos atuais (git switch e git restore) e as variantes seguras (--force-with-lease, reset --keep) sempre que há escolha.

Papel

Cabe em uma página: A4, Carta.

Git

Comandos do dia a dia, branches, stash e receitas para desfazer

git 2.23+Revisado em 2026-09-27

Começar

  • git initCria um repositório na pasta atual
  • git clone <url>Copia um repositório remoto com todo o histórico
  • git config --global user.name "Your Name"Nome gravado nos seus commits
  • git config --global user.email you@example.comE-mail gravado nos seus commits

Dia a dia

  • git statusArquivos alterados, preparados e não rastreados
  • git add <path>Prepara um arquivo ou pasta para o próximo commit
  • git add -pPrepara mudança por mudança, revisando cada trecho
  • git commit -m "message"Grava as mudanças preparadas
  • git diffMudanças ainda não preparadas
  • git diff --stagedMudanças preparadas para o próximo commit (igual a --cached)
  • git log --oneline --graph --allHistórico compacto de todos os branches
  • git show <commit>Um commit: mensagem, autor e diff
  • git pullBusca e integra o branch remoto de origem
  • git pushEnvia seus commits para o branch remoto
  • git fetch --pruneAtualiza os branches remotos e remove os apagados

Branches

  • git branch -aLista branches locais e remotos
  • git switch -c <branch>Cria um branch e muda para ele
  • git switch <branch>Muda para um branch existente
  • git switch -Volta para o branch anterior
  • git merge <branch>Junta aquele branch ao branch atual
  • git rebase mainReaplica seus commits em cima do main
  • git push -u origin <branch>Publica um branch novo e passa a acompanhá-lo
  • git branch -m <new-name>Renomeia o branch atual
  • git branch -d <branch>Apaga um branch já integrado (-D força)
  • git push origin --delete <branch>Apaga um branch no remoto
  • git cherry-pick <commit>Copia um commit para o branch atual

Stash

  • git stash -uGuarda as mudanças não commitadas, inclusive arquivos novos
  • git stash listMudanças guardadas, a mais recente é stash@{0}
  • git stash popReaplica o stash mais recente e o descarta
  • git stash apply stash@{1}Reaplica um stash, mas mantém na lista

Desfazer

  • Descartar edições de um arquivogit restore <file>As mudanças não commitadas somem de vez
  • Tirar do stage, manter as ediçõesgit restore --staged <file>Desfaz o git add daquele arquivo
  • Corrigir a mensagem do último commitgit commit --amend -m "new message"Só antes do push: o commit é substituído
  • Pôr um arquivo esquecido no último commitgit add <file> git commit --amend --no-editMantém a mensagem como estava
  • Desfazer o último commit, mudanças no stagegit reset --soft HEAD~1Arquivos e index intactos; só o commit sai
  • Desfazer o último commit, mudanças fora do stagegit reset HEAD~1--mixed é o modo padrão
  • Jogar fora o último commit e as mudançasgit reset --hard HEAD~1Também apaga trabalho não commitado; o reflog ainda acha o commit
  • Desfazer um commit que já foi enviadogit revert <commit>Cria um commit novo que o anula; o histórico fica intacto
  • Mover o último commit para um branch novogit branch <new> git reset --keep HEAD~1 git switch <new>--keep se recusa a rodar se fosse perder edições locais
  • Recuperar um branch apagado ou commit perdidogit reflog git branch rescue <sha>O reflog lista todas as posições por onde o HEAD passou
  • Trazer um arquivo de um commit antigogit restore --source=<commit> <file>Sobrescreve a cópia de trabalho do arquivo
  • Parar um merge ou rebase que deu erradogit merge --abort git rebase --abortVolta ao estado de antes de começar
  • Apagar arquivos não rastreadosgit clean -n git clean -fd-n lista o que sairia; -f apaga, -d inclui pastas
  • Enviar depois de reescrever o históricogit push --force-with-leaseRecusa se o remoto mudou desde o seu último fetch

Investigar e marcar versões

  • git log -p <file>Todas as mudanças de um arquivo, com diff
  • git blame <file>Último commit e autor de cada linha
  • git diff main...<branch>O que um branch mudou desde que saiu do main
  • git tag -a v1.2.0 -m "v1.2.0"Tag anotada no commit atual
  • git push origin v1.2.0Tags não vão junto com o branch no push
Conferido no git-scm.com e no Git 2.55www.arielton.com/pt/cheatsheets/git

O que tem no guia

O bloco de desfazer é organizado pelo problema, e não pelo comando, porque ninguém lembra se precisa de reset, restore ou revert: a pessoa lembra que commitou no branch errado. Cada receita diz o que mantém e o que destrói, que é a parte que custa trabalho quando dá errado.

Cada opção do guia foi conferida na referência do git-scm.com e na saída de uso do Git 2.55, e as receitas de desfazer foram executadas num repositório de teste para confirmar o efeito na árvore de trabalho, no index e no branch.

Como imprimir em uma página

Escolha o papel acima do guia e clique em Imprimir / Salvar PDF. A página mede o guia na largura desse papel e ajusta a escala para ocupar uma folha, nunca abaixo de 7pt, e esconde o cabeçalho, o rodapé, os anúncios e os botões do site. A impressão sai sempre em preto no branco, seja qual for o tema da tela.

Na janela de impressão deixe a Escala em Padrão (100%) e as Margens em Padrão. Para gerar um PDF, escolha Salvar como PDF no destino. O Safari ignora o tamanho de papel que a página pede, então selecione o mesmo papel na janela dele.

Incorpore ou crie um link para este guia

Um link para esta página na sua documentação, wiki ou README é o melhor jeito de compartilhar: quem clicar sempre vê a versão atual e o botão de imprimir. Copie um destes:

HTML
<a href="https://www.arielton.com/pt/cheatsheets/git">Git cheat sheet em português para imprimir</a> por <a href="https://www.arielton.com/pt">Arielton Oberek</a>
Markdown
[Git cheat sheet em português para imprimir](https://www.arielton.com/pt/cheatsheets/git) por [Arielton Oberek](https://www.arielton.com/pt)

Se a sua equipe quer o mesmo tratamento para uma API interna, uma CLI ou um guia de estilo, escreva para contact@arielton.com.

Perguntas frequentes

Como desfazer o último commit no Git?
git reset --soft HEAD~1 remove o commit e mantém as mudanças no stage, git reset HEAD~1 as mantém fora do stage e git reset --hard HEAD~1 as descarta. Se o commit já foi enviado, use git revert <commit> para não reescrever um histórico compartilhado.
Qual a diferença entre git switch e git checkout?
O git switch, criado no Git 2.23 junto com o git restore, só troca de branch, e o git restore só restaura arquivos. O git checkout faz as duas coisas, o que facilitava sobrescrever arquivos sem querer. O checkout continua funcionando; o guia usa os comandos novos.
O git push --force-with-lease é seguro?
Mais seguro que o --force: ele se recusa a sobrescrever o branch remoto se ele mudou desde o seu último fetch, então você não apaga commits de um colega sem perceber. Ainda assim reescreve o histórico, então use só em branches em que ninguém mais trabalha.
Como recuperar um branch que apaguei?
Rode git reflog, ache o último commit em que você estava naquele branch e recrie com git branch <nome> <sha>. Commits soltos continuam recuperáveis até a coleta de lixo removê-los, o que por padrão leva pelo menos 30 dias.

Revisado em por Arielton Oberek.