Folha de Dicas de Comandos Git
O Git tem cerca de 150 subcomandos e vários deles parecem perigosamente semelhantes, reset vs restore, checkout vs switch, rm vs restore --staged. Esta folha de dicas agrupa os comandos que você realmente digita por situação: fluxo de trabalho diário, ramificação, desfazendo erros e armazenando. Escolha o grupo e copie o bloco.
Como usar a folha de dicas
-
1
Escolha um tópico
Diário, ramificação, desfazer ou stash, cada um mapeia para um modo mental diferente.
-
2
Escaneie o bloco
Cada linha é um comando completo e funcional, sem espaços reservados entre colchetes angulares, a menos que explicitamente marcado.
-
3
Copie o que você precisa
Cole no seu terminal, ajuste o nome da ramificação ou o SHA do commit e execute.
Por que os comandos ainda confundem usuários experientes
O porcelanato do Git cresceu por acréscimo. checkout foi sobrecarregado para “trocar de ramificação” e “restaurar arquivo”; reset fica entre “descartar trabalho” e “mover o ponteiro da ramificação”. Desde o Git 2.23, existem verbos mais claros:
| Antigo | Novo (mais claro) |
|---|---|
git checkout branch |
git switch branch |
git checkout -b new |
git switch -c new |
git checkout -- file |
git restore file |
git checkout --staged file |
git restore --staged file |
A escada de desfazer segura
- Restaurar um arquivo:
git restore path/to/file(não preparado) ougit restore --staged path/to/file(preparado, mas não comitado). - Desfazer o último commit, manter alterações:
git reset --soft HEAD~1. - Desfazer o último commit, descartar alterações:
git reset --hard HEAD~1(destrutivo; verifique se você não tem trabalho não comitado). - Reverter um commit compartilhado:
git revert <sha>, cria um novo commit que anula o antigo; seguro em histórico enviado.
Etiqueta do stash
- Sempre faça stash com uma mensagem:
git stash push -m "wip: conectando api". - Liste os stashes com
git stash listantes de aplicar, stashes anônimos se acumulam rapidamente. git stash popaplica e exclui;git stash applyaplica e mantém.
Recuperação
Perdeu um commit após um reset duro? Provavelmente ainda está no reflog. Execute git reflog para ver cada movimento de HEAD dos últimos 90 dias e git reset --hard <sha> para voltar a um estado bom.
Perguntas frequentes
Desde o Git 2.23 (agosto de 2019), o projeto dividiu o verbo sobrecarregado checkout em dois. switch muda de ramificação, restore corrige arquivos. Ambos ainda existem para compatibilidade retroativa, mas são mais fáceis de ler quando você revisita o histórico do shell.
reset move o ponteiro da ramificação (e opcionalmente a árvore de trabalho). revert cria um novo commit que desfaz um anterior, seguro em uma ramificação compartilhada. checkout / restore altera arquivos na árvore de trabalho sem reescrever o histórico.
Use git revert <sha> para adicionar um commit compensatório e enviá-lo. Evite git reset --hard + git push --force em ramificações compartilhadas, a menos que a equipe tenha concordado explicitamente.
Os comandos são texto estático renderizado na página. O tópico escolhido é enviado ao servidor apenas para exibir os comandos correspondentes e é levado no link da página quando você avança entre as duas etapas. Ele não é armazenado nem registrado.
Ferramentas relacionadas
Referência da Tabela ASCII
Tabela ASCII completa de 0 a 127 com valores decimais, hexadecimais, octais e binários e notação de referência numérica HTML, incluindo NUL, LF e DEL.
Referência de Caracteres HTML
Lista pesquisável de entidades HTML, seus códigos nomeados e numéricos, e uma cópia com um clique para caracteres e símbolos especiais.
Referência de atalhos de teclado
Pesquise atalhos padrão documentados do VS Code, Chrome e Bash com GNU Readline no macOS, Windows e Linux.
Gerador de EditorConfig
Gere um arquivo .editorconfig com suas regras de estilo e tamanho de indentação, fim de linha, charset e espaços em branco para formatação consistente entre IDEs e editores.
Validador de Email
Valide um endereço de email: verificação de sintaxe RFC 5322, consulta de registro MX em tempo real, além de detalhes de parte local, domínio e comprimento. Nenhum email é enviado.
Formatador de HTML
Formate HTML localmente no navegador com indentação de dois ou quatro espaços. O HTML não é enviado nem validado.
Ferramenta disponível em outros idiomas
- Ściąga z poleceń Git [PL]
- Hoja de trucos de comandos de Git [ES]
- Git-commando's spiekbriefje [NL]
- Bảng tra nhanh lệnh Git [VI]
- ورقة مرجعية لأوامر Git [AR]
- Git-kommandon fusklapp [SV]
- Gitコマンドチートシート [JA]
- คู่มือคำสั่ง Git สำหรับการใช้งานอย่างรวดเร็วและสะดวก [TH]
- Lembar Contekan Perintah Git [ID]
- Git 명령어 치트시트 [KO]
- Feuille de triche des commandes Git [FR]
- Git-Befehlsübersicht [DE]
- Git Command Cheatsheet [EN]
- Promemoria dei comandi Git [IT]
- Шпаргалка по командам Git [RU]
- Git Komutları Kopya Kağıdı [TR]
- Git命令速查表 [ZH]