Carregando

Carregando fontes… todos os arquivos

    Visão geral

    Branchwise ensina git numa linha de comando. Cada nível começa com um pequeno repositório desenhado como um grafo de commits, com o objetivo desenhado ao lado. Digite comandos git de verdade; o grafo muda a cada um, e o nível é concluído assim que o seu repositório fica igual ao objetivo, não importa como você chegou lá.

    As 34 lições vão do git init e da área de staging, passando por branches, merges e seus conflitos, tags e desfazer trabalho, até cherry-pick, rebase interativo, rebase --onto, commits fixup com --autosquash, branches empilhados com --update-refs, fetch, pull e push com o origin de um colega, force-with-lease, bisect e worktrees. Os comandos respondem como o git, erros incluídos.

    Feito por
    wasmga.me
    Lançamento
    2026

    Guia de controles

    Na linha de comando

    TeclaAção
    TypeDigitar um comando; comandos git, além de cd, edit, make test e ls onde uma lição os usa
    EnterExecutar o comando; numa linha vazia, pausar
    Cima/BaixoComandos anteriores
    Esquerda/DireitaMover o cursor
    Clique/ToqueUm commit adiciona o id ao comando; um branch ou tag, o nome

    Na lista de tarefas do rebase

    TeclaAção
    Cima/BaixoEscolher uma linha
    P, S, F, DMarcar como pick, squash, fixup ou drop
    K/JMover a linha para cima ou para baixo
    EnterComeçar o rebase
    Q/BackspaceSair sem mudar nada

    Resumo rápido

    Fora do git

    hint
    Um empurrãozinho para este nível
    solution
    Um jeito de concluí-lo (custa mais que uma dica)
    undo
    Desfazer o último comando que mudou algo
    clear
    Limpar a saída

    Como nomear commits

    HEAD, @
    Onde você está
    main~2
    Dois commits atrás pelos primeiros pais
    main^2
    O segundo pai de um merge
    HEAD@{1}
    Onde o HEAD estava um movimento antes (o reflog)
    @{u}
    O upstream do seu branch, como origin/main
    -
    Com switch ou checkout: onde você estava antes

    Pontuação

    1000
    Cada nível, usando tão poucos comandos quanto o caminho mais curto
    -100
    Cada comando além disso
    -250
    Cada dica; solution conta como duas

    Dicas

    1. Rode git status e git log --all sempre que o grafo surpreender: eles imprimem o que o desenho mostra.
    2. Commits esmaecidos são os que nenhum branch, tag ou HEAD alcança mais. Eles continuam lá, e o reflog consegue encontrá-los.
    3. Um nível só confere o resultado final, então qualquer caminho até o objetivo vale; um curto dá pontuação melhor.
    4. Raramente é preciso digitar o id de um commit: toque no commit ou conte para trás a partir de um branch com ~.