Pratique o primeiro pull request num terminal de faz de conta
Digite os comandos de git do clone ao push, veja a resposta e erre à vontade: nada aqui toca no seu computador nem no GitHub. 8 marcos mostram onde você está.
Terminal de exercício
Você é ana-dev; o projeto original é de maria-lima
Escreva o primeiro comando abaixo e tecle Enter. Sem ideia por onde começar? Use o botão “Mostrar o próximo comando”. Digite ajuda para ver a lista.
Seta para cima repete o comando anterior.
Como praticar git sem medo de estragar nada?
Use um terminal de faz de conta: ele aceita os comandos do primeiro pull request, responde como o Git e deixa você errar e recomeçar quantas vezes quiser. Quando os comandos ficarem familiares, repita no seu computador com o passo a passo.
Como usar o exercício
Você é a Ana (ana-dev), que já fez o fork do projeto receitas, da Maria (maria-lima). Os nomes são inventados para o exercício.
- Clonar o seu fork:
git clone https://github.com/ana-dev/receitas.git - Entrar na pasta do projeto:
cd receitas - Registrar o projeto original como upstream:
git remote add upstream https://github.com/maria-lima/receitas.git - Criar uma branch para a mudança:
git switch -c corrige-link-quebrado - Fazer a mudança no README.md:
editar README.md - Marcar o arquivo com git add:
git add README.md - Gravar o commit:
git commit -m "docs: corrige o link quebrado do README" - Enviar a branch ao seu fork:
git push -u origin corrige-link-quebrado
Os comandos acima são os do passo a passo do primeiro pull request, com os nomes do exercício. Em dúvida, o botão “Mostrar o próximo comando” escreve o seguinte no campo, e você só tecla Enter. O comando editar README.md não existe no Git: ele faz de conta que você abriu o arquivo no editor e salvou a mudança.
Erre de propósito: sete tropeços comuns
A primeira linha de cada erro é a mesma que o passo a passo registra para o Git 2.55.
| Comando | Como provocar | O terminal responde |
|---|---|---|
git push | Rode antes de git push -u origin <branch>, logo depois do primeiro commit. | fatal: The current branch … has no upstream branch. |
git add README.txt | Digite o nome do arquivo errado. | fatal: pathspec 'README.txt' did not match any files |
git switch -c corrige-link-quebrado | Rode duas vezes seguidas. | fatal: a branch named 'corrige-link-quebrado' already exists |
git remote add upstream … | Rode duas vezes seguidas. | error: remote upstream already exists. |
git status | Rode antes de editar o arquivo. | nothing to commit, working tree clean |
git diff | Rode depois do git add. | Sem saída: o git diff só mostra o que ainda não foi marcado. Use git diff --staged. |
git remote -v | Rode antes de entrar na pasta com cd. | fatal: not a git repository (or any of the parent directories): .git |
O conserto de cada um está na tabela de erros que mais travam quem começa.
O que o simulador não faz
- Não roda Git de verdade: a resposta de sucesso é simplificada e os códigos dos commits são inventados.
- Não cobre merge, rebase, conflito nem fetch. Para atualizar o fork, siga o guia como manter o fork atualizado; para conflitos, resolver conflito de merge.
- Não abre o fork nem o pull request, que acontecem no site do GitHub.
- Usa as respostas do Git em inglês, como no passo a passo, e o estilo de terminal Bash.
O exercício não guarda nada: o que você digita fica só nesta página e some ao recarregar.
Perguntas frequentes
O simulador roda Git de verdade no meu computador?
Não. É um terminal de faz de conta que roda só na página: reconhece os comandos do passo a passo e responde no formato do Git. Nada é instalado, enviado ou gravado no seu computador, e o exercício some quando você recarrega a página.
As respostas do simulador são iguais às do Git?
As mensagens de erro são as reproduzidas no Git 2.55 para o passo a passo. As respostas de sucesso são simplificadas: o push real mostra também a contagem de objetos, e os códigos dos commits aqui são inventados. Se algo divergir no seu Git, vale o que o seu terminal mostrar.
Posso errar de propósito para ver a mensagem de erro?
Pode, e é um bom uso. Rode git push antes do git push -u, tente git add com o nome de um arquivo que não existe ou git switch -c com uma branch que já criou. Cada erro aparece com a mesma primeira linha do passo a passo, e o botão Recomeçar zera o exercício.
O simulador abre o pull request?
Não. O pull request acontece no site do GitHub, depois do push, e o simulador não tem como imitar esse passo. Quando você chega ao último marco, a página leva ao passo que descreve os cliques, tirados da documentação do GitHub.
Preciso de conta no GitHub para usar o simulador?
Não. O exercício usa nomes de exemplo (o fork ana-dev/receitas e o projeto original maria-lima/receitas), inventados só para o exercício e sem ligação com contas reais. Nenhum endereço é acessado. Você só precisa de uma conta quando for fazer o fork e o pull request reais.
Fontes desta página
Abertas em 11/10/2026. As mensagens de erro foram reproduzidas por nós no Git 2.55, no passo a passo.
- Fork a repository (GitHub Docs)
A página não mostra data · aberta em · reconferência: confirmada na abertura (11/10/2026) · licença do conteúdo: CC BY 4.0 (conteúdo); MIT (código)
O que lemos: O que é um fork ("propor mudanças sem afetar o repositório original"), o botão Fork, o comando gh repo fork, clonar o fork, git remote add upstream e git remote -v, e os avisos sobre repositórios privados.
Como usamos: Texto próprio em português; os fatos e os comandos vêm da página, sem copiar trechos. Link e data em cada uso. - Pro Git, 3.1 Ramificação no Git: Branches em Poucas Palavras (git-scm.com)
A página não mostra data · aberta em · reconferência: confirmada na abertura (11/10/2026) · licença do conteúdo: CC BY-NC-SA 3.0
O que lemos: Um branch é um ponteiro móvel para um commit; HEAD aponta para o branch em que você está; git branch cria sem trocar; git checkout -b cria e troca; desde o Git 2.23, git switch e git switch -c fazem o mesmo papel.
Como usamos: Só link e fatos (nomes de comandos). A licença proíbe uso comercial e exige a mesma licença nas adaptações; como este site pode exibir anúncios, nenhum trecho do livro é copiado, traduzido ou adaptado. - Pro Git, 5.2 Git Distribuído: Contribuindo com um Projeto (git-scm.com)
A página não mostra data · aberta em · reconferência: confirmada na abertura (11/10/2026) · licença do conteúdo: CC BY-NC-SA 3.0
O que lemos: As diretrizes de commit: conferir espaços em branco com git diff --check, um commit por mudança lógica, resumo de cerca de 50 caracteres, linha em branco e explicação por volta de 72 colunas, verbo no imperativo.
Como usamos: Só link e fatos (git diff --check; limites de 50 e 72 caracteres, tratados aqui como regra prática). Nenhum trecho do livro é copiado ou adaptado, por causa da cláusula NC. - Contributing to a project (GitHub Docs)
A página não mostra data · aberta em · reconferência: confirmada na abertura (11/10/2026) · licença do conteúdo: CC BY 4.0 (conteúdo); MIT (código)
O que lemos: O caminho fork, clone, branch, alterar, commit, push e pull request, com os comandos git clone, git branch, git checkout, git add, git commit e git push.
Como usamos: Texto próprio em português; os fatos e os comandos vêm da página, sem copiar trechos. Link e data em cada uso.
Continue por aqui
Os geradores, o passo a passo e os guias ficam a um clique.
- Primeira contribuiçãoDo fork ao pull request, com os comandos de git para copiar.
- Gerador de READMEPreencha o projeto e copie o README.md pronto.
- Gerador de CONTRIBUTINGDiga como o projeto recebe ajuda e copie o arquivo.
- Mensagem de commitMonte e valide a mensagem no padrão Conventional Commits.
- Guias16 guias curtos, cada um com a fonte oficial aberta e a licença.