Exercício – criar um pedido Pull

Concluído

Na sandbox, certifique-se de que você ainda está no diretório Alice , que é a pasta superior para o clone de Alice do repositório Cats. Você pode usar o comando pwd para verificar o local da pasta.

pwd

No momento, não há nada para Alice puxar porque você não fez nenhuma alteração desde que Alice clonou o repo. Você pode provar isso usando o seguinte comando, que mostra a saída Already up to date:

git pull

Efetuar uma alteração e submeter um pedido Pull

Alice começa a trabalhar no site. A primeira decisão de Alice é mudar a cor de fundo do site. Alice experimenta localmente e, finalmente, escolhe seu tom favorito de azul claro.

  1. Configure uma identidade para Alice executando os seguintes comandos:

    git config user.name "Alice"
    git config user.email "alice@contoso.com"
    
    

    Essas config configurações são armazenadas no repositório no arquivo .git/config , para que você não precise inseri-las novamente. Cada vez que você muda para o diretório Alice , você efetivamente assume a identidade de Alice.

  2. Abra o arquivo site.css no diretório Alice/CSS :

    code CSS/site.css
    
    
  3. Para alterar a cor de fundo da página para azul claro, substitua a segunda linha no ficheiro pela seguinte instrução:

    body { font-family: serif; background-color: #F0FFF8; }
    

    Em seguida, salve o arquivo e feche o editor.

  4. Agora, confirme a mudança:

    git commit -a -m "Change background color to light blue"
    
    
  5. Em seguida, faça uma solicitação pull de volta para o repositório original:

    git request-pull -p origin/main .
    
    
  6. Verifique a saída. Você deve ver uma saída semelhante ao exemplo a seguir:

    The following changes since commit 2bf69ab0226d8d35efd1e92c83cd92c5cc09a7ae:
    
      Add simple HTML and stylesheet (2019-11-21 01:57:24 +0000)
    
    are available in the git repository at:
    
      .
    
    for you to fetch changes up to 95bbc3b6929953e9b04353920e97230b463022f0:
    
      Change background color to light blue (2019-11-21 02:33:48 +0000)
    
    ----------------------------------------------------------------
    Alice (1):
          Change background color to light blue
    
     CSS/site.css | 2 +-
     1 file changed, 1 insertion(+), 1 deletion(-)
    
    diff --git a/CSS/site.css b/CSS/site.css
    index caefc86..86d41e8 100644
    --- a/CSS/site.css
    +++ b/CSS/site.css
    @@ -1,2 +1,2 @@
     h1, h2, h3, h4, h5, h6 { font-family: sans-serif; }
    -body { font-family: serif; }
    \ No newline at end of file
    +body { font-family: serif; background-color: #F0FFF8; }
    \ No newline at end of file
    

Criar um remoto e concluir um pedido Pull

Como o diretório do projeto e o diretório Alice estão no mesmo computador, você pode extrair diretamente do diretório Alice . Na vida real, o diretório Alice estaria no computador de Alice. Você resolve essa situação configurando um controle remoto usando o git remote comando. Em seguida, você usa esse controle remoto para solicitações pull e push. Para este exercício, não é prático configurar duas máquinas para executar essas etapas, então vamos configurar um controle remoto que usa um nome de caminho local. Na realidade, iria utilizar um URL ou caminho de rede.

  1. Volte para o diretório do projeto e use o git remote comando para criar um controle remoto chamado remote-alice que tenha como alvo o diretório do projeto de Alice:

    cd ../Cats
    git remote add remote-alice ../Alice
    
    
  2. Agora, execute um pull:

    git pull remote-alice main
    
    

    Observe que você precisa especificar uma ramificação, main, no comando pull. Você aprenderá na próxima lição como configurar uma URL upstream para a ramificação.

  3. Verifique a saída. Você deve ver uma saída como este exemplo, que mostra que você concluiu com êxito a solicitação pull:

    remote: Counting objects: 4, done.
    remote: Compressing objects: 100% (3/3), done.
    remote: Total 4 (delta 1), reused 0 (delta 0)
    Unpacking objects: 100% (4/4), done.
    From ../Alice
     * branch            main     -> FETCH_HEAD
     * [new branch]      main     -> remote-alice/main
    Updating 2bf69ab..95bbc3b
    Fast-forward
     CSS/site.css | 2 +-
     1 file changed, 1 insertion(+), 1 deletion(-)
    

A diversão está apenas a começar! Na próxima lição, irá aprender a configurar e utilizar um repositório partilhado, que torna a colaboração mais simples e conveniente.