Trilha de aprendizado · Nível 4 · Tutorial 1

Abrir um pull request com uma proposta clara

Você será capaz de propor uma mudança em um repositório com permissão de escrita, escolhendo as branches corretas, explicando a finalidade da proposta e conferindo as alterações antes de abrir o pull request.

  • Nível: Iniciante
  • Duração: 15 min
  • 7 passos
Abrir um pull request com uma proposta clara

O que você vai percorrer

  1. Entender o papel do pull request Diferencie publicar uma branch, abrir uma proposta e integrar uma mudança. 1 min
  2. Publicar a branch e iniciar a proposta Publique sua branch de trabalho, confirme que ela está no repositório correto e acesse a comparação no GitHub. 2 min
  3. Escolher a origem e o destino Selecione compare e base para propor as mudanças na direção correta, usando a branch de destino definida pelo projeto. 2 min
  4. Conferir o que entra na proposta Confira commits, arquivos e diferenças para decidir se a proposta contém apenas as mudanças pretendidas. 3 min
  5. Escrever uma proposta que faça sentido Prepare um título específico e uma descrição que expliquem o motivo, o escopo e as verificações reais da mudança. 3 min
  6. Abrir e confirmar o pull request Envie o formulário e confirme que a proposta está aberta, com as branches corretas, sem confundir abertura com integração. 1 min
  7. Aplicação final: apresentar uma mudança completa Aplique o fluxo em uma proposta real ou simulada e confira se ela está aberta, clara e pronta para revisão. 3 min

O que você vai aprender

  • Publicar uma branch de trabalho e iniciar um pull request no mesmo repositório.
  • Selecionar a branch de origem das alterações e a branch de destino da integração.
  • Escrever um título e uma descrição que expliquem o motivo da mudança, seu escopo e como o resultado foi conferido.
  • Conferir os commits, os arquivos e as diferenças da proposta antes de abrir o pull request.

Antes de começar

  • Registrar alterações em commits locais
  • Inspecionar alterações e histórico com diff e log
  • Criar e alternar branches com segurança
  • Publicar um repositório local no GitHub

Passo 1 de 7

Entender o papel do pull request

Diferencie publicar uma branch, abrir uma proposta e integrar uma mudança.

Uma proposta para discutir e revisar

O que é um pull request?

Um pull request (PR) é uma proposta para levar alterações de uma branch a outra. No GitHub, ele reúne as mudanças propostas e um espaço para discussão e revisão.

Exemplo

A mudança que vamos propor

Neste tutorial, você vai acompanhar uma pequena melhoria nas instruções de instalação do README, registrada em uma branch de trabalho. A proposta será entre branches do mesmo repositório, onde você tem permissão de escrita.

Três ações diferentes

  • Publicar a branch: disponibilizar no GitHub a branch de trabalho com seus commits.
  • Abrir o pull request: propor que as alterações dessa branch sejam levadas à branch de destino.
  • Integrar a mudança: incorporar as alterações à branch de destino.

Abrir o PR não faz essa integração: são ações distintas.

Dica

Até onde vamos

Este tutorial termina com uma proposta aberta e disponível para revisão, ainda sem integrar a mudança.

A mudança já foi integrada?

Verdadeiro ou falso

Você publicou a branch com a melhoria no README e abriu um pull request. Só essas duas ações já colocaram a melhoria na branch de destino.

Passo 2 de 7

Publicar a branch e iniciar a proposta

Publique sua branch de trabalho, confirme que ela está no repositório correto e acesse a comparação no GitHub.

Publique e confirme a branch

Disponibilize a mudança no GitHub

A melhoria na documentação já está registrada em commits na sua branch de trabalho. Para propor essa mudança, a branch com esses commits precisa estar disponível no GitHub.

Publique-a usando o push que você já praticou no tutorial anterior.

Confira no repositório correto

No GitHub:

  1. Abra o repositório em que você tem permissão de escrita e confira o proprietário e o nome no topo da página.
  2. Na aba Code (código), abra o seletor de branches e localize sua branch de trabalho.
  3. Selecione essa branch e confirme, no histórico dela, que os commits da melhoria estão disponíveis.

Acesse a comparação

Comece pela área de pull requests

Nesse mesmo repositório, abra a aba Pull requests e clique em New pull request (novo pull request).

Você chegará à tela de comparação entre branches. Esse clique inicia a preparação da proposta, mas ainda não cria o pull request. Pare nessa tela: a escolha das branches será o próximo passo.

Dica

Não dependa de um aviso

O aviso de branch recém-publicada pode não aparecer. O caminho pela aba Pull requests funciona mesmo sem ele.

Organize a preparação

Dos commits locais à comparação

Sua melhoria na documentação está commitada, mas a branch ainda não foi publicada. Ordene as ações para chegar à comparação no GitHub.

  1. Confirmar, no repositório correto do GitHub, que a branch e seus commits estão disponíveis.
  2. Clicar em New pull request para acessar a comparação.
  3. Abrir a aba Pull requests desse repositório.
  4. Publicar a branch de trabalho com os commits da melhoria.

Passo 3 de 7

Escolher a origem e o destino

Selecione compare e base para propor as mudanças na direção correta, usando a branch de destino definida pelo projeto.

Origem e destino têm nomes na tela

Compare → base

Na comparação do GitHub, cada seletor tem um papel:

  • compare: a branch de origem, que contém as mudanças propostas.
  • base: a branch de destino, que poderá receber essas mudanças.

Leia sempre: alterações de compare para base. Neste tutorial, escolha as duas branches no mesmo repositório.

Dica

O destino depende do projeto

Não mantenha main como base só porque ela apareceu selecionada. Use a branch de destino indicada pelo projeto. Se não souber qual é, confirme a orientação antes de continuar.

Monte a direção da proposta

Qual branch vai em cada campo?

Você melhorou as instruções de instalação na branch docs/instalacao. O projeto orienta que essa mudança seja proposta para develop. As duas branches estão publicadas no mesmo repositório.

Associe os campos e o sentido da proposta aos valores corretos.

Toque em um item e depois no par correspondente.

Aplique nos seletores do GitHub

Selecione pelos papéis

Na tela de comparação que você abriu:

  1. Confira se está no repositório da sua contribuição.
  2. Clique em base e selecione a branch de destino definida pelo projeto.
  3. Clique em compare e selecione sua branch de trabalho.
  4. Leia a configuração: “Quero propor levar as mudanças de compare para base”.

No cenário do exercício, os seletores devem ficar como base: develop e compare: docs/instalacao.

Dica

Não confunda a ordem visual com a direção

Embora base apareça antes de compare na interface, a proposta vai de compare para base. Siga os rótulos, não apenas a posição dos seletores.

Passo 4 de 7

Conferir o que entra na proposta

Confira commits, arquivos e diferenças para decidir se a proposta contém apenas as mudanças pretendidas.

Confira em três níveis

Tenha o objetivo como referência

Nossa melhoria de documentação tem um limite claro: esclarecer, no README, em que ordem executar os passos de instalação, sem mudar outras seções. Antes de abrir o pull request, confira se a comparação corresponde a esse objetivo.

Percorra a comparação no GitHub

Abaixo dos seletores de branches, confira:

  1. Commits: todos os commits incluídos pertencem à mudança que você quer propor? Investigue mensagens inesperadas.
  2. Arquivos: a lista contém apenas arquivos relacionados ao objetivo?
  3. Diferenças: leia os trechos alterados de cada arquivo. As adições e remoções fazem sentido para a proposta?

Dica

Encontrou algo inesperado?

Interrompa a abertura. Primeiro, confirme se base e compare são as branches pretendidas. Depois, confira o escopo das alterações. Só avance quando entender a divergência e a comparação estiver coerente com o objetivo.

Uma mudança a mais

Exemplo

Resumo da comparação

Objetivo: esclarecer a ordem dos passos de instalação no README.

Commits incluídos:

  • Esclarece instruções de instalação.
  • Ajusta tempo limite de conexão.

Arquivos e diferenças:

  • README.md: acrescenta a orientação de seguir a ordem apresentada.
  • src/config.js: altera o tempo limite de conexão.

Qual é a próxima ação?

Você não pretendia propor uma alteração de configuração. Como deve proceder?

O arquivo certo pode conter a mudança errada

Leia além dos nomes

Imagine outra comparação: há apenas o commit “Esclarece instalação” e o arquivo README.md. Isso ainda não basta. Veja o trecho de diferenças:

Diferenças no README.md

diff
--- a/README.md
+++ b/README.md
@@ -12,4 +12,1 @@
-Execute os comandos abaixo.
+Execute os comandos abaixo, na ordem apresentada.
-
-## Como contribuir
-Leia CONTRIBUTING.md antes de enviar sugestões.

Dica

A remoção também entra na proposta

A orientação de instalação foi esclarecida, mas a seção “Como contribuir” também foi removida. Essa exclusão está fora do objetivo definido. Mesmo com o arquivo e a mensagem de commit esperados, é necessário interromper e investigar.

Quando é possível seguir?

Exemplo

Uma comparação coerente

Considere agora este cenário:

  • Base e compare foram confirmadas.
  • Há apenas o commit “Esclarece ordem dos passos de instalação”.
  • O único arquivo alterado é README.md.
  • A única diferença é a substituição abaixo; as demais seções estão preservadas.

Diferenças no README.md

diff
--- a/README.md
+++ b/README.md
@@ -12 +12 @@
-Execute os comandos abaixo.
+Execute os comandos abaixo, na ordem apresentada.

Avalie a decisão

O conjunto de alterações corresponde ao objetivo de esclarecer a ordem da instalação. Você pode seguir para preparar a apresentação da proposta.

Passo 5 de 7

Escrever uma proposta que faça sentido

Prepare um título específico e uma descrição que expliquem o motivo, o escopo e as verificações reais da mudança.

Abra o formulário e prepare o título

Da comparação ao formulário

Depois de conferir as alterações, clique em Create pull request na tela de comparação. Esse primeiro clique abre o formulário para preencher título e descrição; ainda não cria a proposta.

O envio do formulário usa outro botão com o mesmo rótulo, Create pull request. Essa ação efetivamente cria a proposta e ficará para o próximo passo.

Diga o que muda

O título deve permitir que alguém entenda a mudança sem abrir os arquivos. Uma boa combinação é ação + o que foi alterado + onde, quando isso ajudar. Evite títulos genéricos como “Ajustes” e não prometa mais do que as alterações entregam.

Escolha um título fiel

Qual título representa a mudança?

A única alteração foi corrigir, no README, um link quebrado para o guia de instalação. Nenhum código foi modificado. Qual título é mais adequado?

Explique a proposta em três partes

Motivo, escopo e conferência

A descrição deve explicar o conjunto da mudança, não apenas repetir a lista de commits.

  • Motivo: qual problema ou necessidade levou à proposta?
  • Escopo: o que mudou? Quais limites são importantes?
  • Conferência: o que você verificou e qual foi o resultado?

Exemplo

Uma descrição para a correção do link

Motivo: o link quebrado no README impedia o acesso ao guia de instalação.

Escopo: corrigi somente o endereço desse link. Não alterei o guia nem o código.

Conferência: cliquei no link no README exibido no GitHub e confirmei que ele abre o guia esperado. Não executei testes automatizados.

Dica

Registre apenas o que aconteceu

Uma conferência manual também conta, mas diga exatamente o que verificou. Visualizar o README não prova que as instruções funcionam. Informe verificações não realizadas em vez de escrever “Tudo testado”.

Agora escreva sua proposta

Use os fatos deste caso

  • Problema: as instruções de instalação não avisavam que era preciso entrar na pasta do projeto antes de continuar.
  • Mudança: você acrescentou essa orientação e organizou as instruções em uma lista numerada, somente no README.
  • Conferência realizada: você leu as diferenças e confirmou que a lista aparece corretamente no GitHub.
  • Não realizado: você não executou as instruções de instalação nem testes automatizados.

Título e descrição

Escreva um título específico e uma descrição com motivo, escopo e conferência. Use apenas os fatos apresentados.

Escreva pelo menos 80 caracteres (0/80).

Passo 6 de 7

Abrir e confirmar o pull request

Envie o formulário e confirme que a proposta está aberta, com as branches corretas, sem confundir abertura com integração.

Enviar o formulário

Agora, crie a proposta

Com as branches selecionadas, as alterações conferidas e o título e a descrição preenchidos, clique em Create pull request (Criar pull request) no formulário.

É esse envio que cria o pull request. Apenas preencher os campos não abre a proposta. Aguarde o carregamento da página do pull request.

Reconhecer a confirmação

Confira a página criada

No topo da página, localize o título, o número da proposta e o estado Open (aberto). Confira também se a origem e o destino exibidos são as branches que você escolheu.

Exemplo

Exemplo de proposta aberta

Neste exemplo, o projeto definiu develop como destino:

  • Título: Esclarece as instruções de instalação no README
  • Número: #18
  • Estado: Open (aberto)
  • Origem: docs/instalacao
  • Destino: develop

Se esses dados correspondem à proposta planejada, a abertura está confirmada. Ela está disponível para revisão; sua criação não integrou as mudanças em develop. Pare aqui, sem acionar a integração.

O que foi concluído?

Aberto não significa integrado

Após enviar o formulário, você encontra o título esperado, um número, o estado aberto e as branches corretas na página. O que isso confirma?

Passo 7 de 7

Aplicação final: apresentar uma mudança completa

Aplique o fluxo em uma proposta real ou simulada e confira se ela está aberta, clara e pronta para revisão.

Sua missão

Apresente uma mudança pequena

Use um repositório de prática com permissão de escrita e uma melhoria na documentação já registrada em commits. Se você já abriu a proposta durante o tutorial, confira a existente, sem criar outra. Sem acesso ao GitHub agora? Faça uma simulação com o cenário abaixo.

Exemplo

Cenário para simular

O README não informa onde salvar imagens. A branch local docs/imagens contém um commit que altera apenas README.md, acrescentando a indicação da pasta assets/imagens/. O destino definido pelo projeto é develop.

Neste cenário, o texto e o diff foram lidos, e o caminho foi conferido na estrutura do projeto. Não foram executados testes.

Dica

Roteiro de execução

Publique a branch → inicie a comparação pela área de pull requests → selecione compare e base no mesmo repositório → confira commits, arquivos e diferenças → escreva título e descrição → envie o formulário e confirme a abertura. Se aparecer conteúdo inesperado, pare e verifique as branches e o escopo.

Registre sua proposta

Mostre o resultado do fluxo

Registre como confirmou a publicação da branch, quais são compare e base e o que encontrou nos commits, arquivos e diferenças. Inclua o título e a descrição da proposta, com motivo, escopo e conferência realizada.

Finalize dizendo como confirmou a abertura. Na simulação, descreva as ações esperadas, sem afirmar que as executou.

Escreva pelo menos 100 caracteres (0/100).

Reconheça o ponto de chegada

A proposta já está aberta?

As branches e as alterações estão corretas, e o título e a descrição estão preenchidos. Mesmo sem enviar o formulário, o pull request já está aberto e disponível para revisão.

Pronta para revisão

Resumo

Quatro critérios para conferir

Antes de encerrar a prática, confira:

  • Publicação: a branch e seus commits estão disponíveis no GitHub.
  • Direção: compare contém a mudança; base é o destino definido pelo projeto.
  • Escopo: commits, arquivos e diferenças correspondem à finalidade da proposta.
  • Comunicação: título específico e descrição com motivo, escopo e verificações reais, sem inventar resultados.

Tutorial concluído

Parabéns! Você concluiu: Abrir um pull request com uma proposta clara

O resultado esperado é uma proposta aberta, clara e disponível para revisão — ainda não integrada. No próximo tutorial, você aprenderá a revisar e atualizar um pull request.

Baixe o Aplicativo agora para ter acesso a + de 5000 cursos gratuitos, exercícios, certificado e muito conteúdo sem pagar nada!

  • Cursos online 100% gratuitos do início ao fim

    Milhares de cursos online em vídeo, ebooks e áudiobooks.

  • Mais de 60 mil exercícios gratuitos

    Para testar seus conhecimentos no decorrer dos cursos online

  • Certificado Digital gratuito válido em todo o Brasil

    Gerado diretamente na galeria de fotos do seu celular e enviado ao seu e-mail

Aplicativo Cursa na tela de ebook, na tela de curso em vídeo e na tela de exercícios do curso, mais o certificado de conclusão de curso