Exercício – Fazer uma solicitação de pull
Na área restrita, verifique se você ainda está no diretório Alice, que é a pasta principal para o clone de Alice do repositório Cats. Use o comando pwd
para verificar a localização da pasta.
pwd
No momento, não há nada para Alice efetuar pull porque você não fez alterações desde que ela clonou o repositório. Comprove isso usando o seguinte comando, que mostra a saída Already up to date
:
git pull
Fazer uma alteração e enviar uma solicitação de pull
Alice começa a trabalhar no site. A primeira decisão dela é alterar a cor da tela de fundo do site. Ela faz experimentos localmente e acaba escolhendo o sombreamento favorito dela, azul-claro.
Configure uma identidade para Alice executando os seguintes comandos:
git config user.name "Alice" git config user.email "alice@contoso.com"
Estas configurações
config
são armazenadas no repositório no arquivo .git/config e, portanto, você não precisará inseri-las novamente. Toda vez que você alterar para o diretório Alice, assumirá efetivamente a identidade dela.Abra o arquivo site.css no diretório Alice/CSS:
code CSS/site.css
Para alterar a cor da tela de fundo da página para azul-claro, substitua a segunda linha do arquivo pela seguinte instrução:
body { font-family: serif; background-color: #F0FFF8; }
Depois, salve o arquivo e feche o editor.
Agora, faça commit da alteração:
git commit -a -m "Change background color to light blue"
Depois, faça uma solicitação de pull novamente para o repositório original:
git request-pull -p origin/main .
Verifique a saída. Você deverá ver uma saída semelhante ao seguinte exemplo:
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 a solicitação de pull
Como o diretório do projeto e o diretório Alice estão no mesmo computador, você pode efetuar pull diretamente no diretório Alice. Na vida real, o diretório Alice estará no computador de Alice. Resolva esta situação configurando um repositório remoto com o comando git remote
. Em seguida, use esse repositório remoto para solicitações de pull e push. Para este exercício, não é prático configurar dois computadores para executar essas etapas. Portanto, configuraremos um repositório remoto que usa um nome de caminho local. Na realidade, você usará um caminho de rede ou uma URL em vez disso.
Altere novamente para o diretório do projeto e use um comando
git remote
para criar um repositório remoto chamadoremote-alice
direcionado ao diretório do projeto de Alice:cd ../Cats git remote add remote-alice ../Alice
Agora, efetue um pull:
git pull remote-alice main
Observe que você precisa especificar um branch,
main
, no comando de pull. Na próxima lição, você aprenderá a configurar uma URL de upstream para o branch.Verifique a saída. Você verá uma saída como este exemplo, que mostra que concluiu com êxito a solicitação de 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 começando! Na próxima lição, você aprenderá a configurar e usar um repositório compartilhado, o que simplifica a colaboração, tornando-a mais conveniente.