Gerador de comandos do Git — Desfazer, ramificação, stash, rebase e muito mais

Escolha uma tarefa como “desfazer o último commit, mas manter minhas alterações” ou “renomear um branch no GitHub”, preencha os nomes dos seus branches e veja os comandos exatos do Git — cada linha explicada, com as etapas de risco destacadas.

Atualizado em

    Seus dados nunca saem do seu computador. Todo o processamento acontece localmente no navegador.

    Como usar: Gerador de comandos do Git

    1. Encontre sua tarefa na lista ou procure por ela — “desfazer”, “renomear”, “armazenar”, “mesclar”.
    2. Preencha os nomes dos branches, os hashes de commit ou os caminhos dos arquivos necessários para a tarefa.
    3. Dá uma olhada na explicação abaixo de cada comando; as etapas marcadas como “reescrevem o histórico” ou “destrutivas” exigem cuidado em branches compartilhados.
    4. Copie um único comando ou todos eles e execute-os no seu terminal a partir da pasta do repositório.

    Como desfazer ações no Git — qual comando usar em cada caso?

    SituaçãoComandoÉ seguro reverter commits já enviados?
    Desfazer o último commit, mantendo as alteraçõesgit reset --soft HEAD~1Não — reescreve o histórico
    Desfazer um commit que outras pessoas já baixaramgit revert <hash>Sim — adiciona um novo commit
    Descartar as alterações não confirmadas em um arquivogit restore <file>Apenas local
    Corrige a mensagem do último commitgit commit --amendNão — reescreve o histórico
    Põe o trabalho em andamento em esperagit stash push -m "…"Apenas local

    Reescrevendo o histórico com segurança

    Comandos como reset, commit --amend e `interactive` rebase criam novos commits com novos hashes. Isso tudo bem no seu próprio branch, mas em um branch compartilhado o histórico de todo mundo deixa de bater. Se você precisar enviar um histórico reescrito, use git push --force-with-lease: ao contrário do --force, ele não sobrescreve commits no remoto que você ainda não viu.

    Comandos modernos: switch e restore

    Desde o Git 2.23, git switch (mudar de branch) e git restore (restaurar arquivos) dividiram o comando sobrecarregado git checkout em dois comandos mais claros. Esse gerador usa eles quando isso deixa as coisas mais claras. Antes de fazer o push, mantenha seu repositório limpo com um .gitignore adequado, escreva notas de lançamento com o Gerador de Changelog e escolha números de versão com a Calculadora de Versão Semântica.

    Também pesquisado como: git desfazer o último commit, git renomear ramo, git delete ramo remoto, git squash commits, guia rápido do git, git revert commit enviado, git remover arquivo do controle de versão, git force com lease.

    Ferramentas que combinam com: Gerador de comandos do Git

    • Conventional Commit Builder — Write commit messages that follow the Conventional Commits spec without memorizing it.
    • Gerador de fluxos de trabalho do GitHub Actions — Escolha sua pilha, gatilhos e etapas e receba um arquivo .github/workflows/ci.yml — instalação, cache, verificação de código, teste, compilação, uma matriz de versões e, opcionalmente, implantação no GitHub Pages, Vercel ou em um registro de contêineres.
    • README Generator — Fill in a few fields and get a clean, GitHub-ready README.md — badges, installation, usage example, configuration table, environment variables, roadmap and license — with a live preview and a completeness check.
    • YAML Validator — Paste a Docker Compose file, Kubernetes manifest, GitHub Actions workflow or any YAML to pinpoint errors, catch common pitfalls and get a cleanly formatted version.

    Perguntas frequentes

    Como faço para desfazer o último commit, mas manter minhas alterações?
    Execute git reset --soft HEAD~1. O commit some, e as alterações continuam na área de preparação. Usa --mixed (a opção padrão) para mantê-las fora da fila de confirmação. Não faça isso em commits que você já enviou para um branch compartilhado — use git revert ali.
    Qual é a diferença entre o `git reset` e o `git revert`?
    reset retrocede o ponteiro do branch e remove os commits do histórico. revert mantém o histórico e adiciona um novo commit que desfaz as alterações, o que é seguro para os commits que outras pessoas já têm.
    Como faço para renomear um branch localmente e no GitHub?
    Renomeie localmente com git branch -m old new, envie o novo nome com git push -u origin new e apague o antigo com git push origin --delete old. Atualiza o branch padrão nas configurações do GitHub, se precisar.
    O comando `git push --force` é perigoso?
    Sim, ele pode excluir commits que outras pessoas enviaram. É melhor usar --force-with-lease, que só sobrescreve o branch remoto se ele ainda estiver onde você o viu pela última vez.
    Posso instalar o Gerador de comandos do Git como um aplicativo da web e usá-lo offline?
    Sim. O Gerador de comandos do Git é um aplicativo da web instalável (PWA) — instalado a partir do seu navegador, não baixado de uma loja de aplicativos. Clique em “Instalar aplicativo” na parte superior desta página no Chrome ou no Edge (Windows, macOS, Linux, ChromeOS) ou, no Android, use “Compartilhar” → “Adicionar à tela inicial” no iPhone e no iPad, ou “Arquivo” → “Adicionar ao Dock” no Safari 17+ em um Mac. Em seguida, ela se abre em uma janela própria com seu próprio ícone e, como é executada inteiramente no seu navegador, continua funcionando offline. O Firefox no desktop não permite a instalação de aplicativos da web. Como funciona a instalação.

    Ferramentas relacionadas