{"id":39192,"date":"2023-02-10T10:00:00","date_gmt":"2023-02-10T13:00:00","guid":{"rendered":"https:\/\/blog.locaweb.com.br\/?p=39192"},"modified":"2024-07-31T13:41:29","modified_gmt":"2024-07-31T16:41:29","slug":"git-pull-aprenda-a-usar-o-comando","status":"publish","type":"post","link":"https:\/\/www.locaweb.com.br\/blog\/temas\/codigo-aberto\/git-pull-aprenda-a-usar-o-comando\/","title":{"rendered":"Git pull: 7 passos para aprender a usar o comando"},"content":{"rendered":"\n<p class=\"has-text-align-center\"><em>O git pull \u00e9 <strong>ideal para gerenciar e controlar as vers\u00f5es de um arquivo em um projeto de desenvolvimento<\/strong> de forma colaborativa<\/em><\/p>\n\n\n\n<p>Git pull \u00e9 um <strong>comando \u00fatil<\/strong> para quem trabalha no desenvolvimento de projetos em equipe e precisa estar sempre com a \u00faltima vers\u00e3o do arquivo. <strong>\u00c9 um atalho que permite verificar os reposit\u00f3rios remotos (git fetch) e gerar um arquivo final atualizado localmente (git merge).<\/strong><\/p>\n\n\n\n<p>Na pr\u00e1tica, o <a href=\"https:\/\/blog.locaweb.com.br\/temas\/codigo-aberto\/git-branch-como-usar-e-gerar-ramificacoes\/\" target=\"_blank\" rel=\"noreferrer noopener\">git branch<\/a> \u00e9 uma ramifica\u00e7\u00e3o de c\u00f3digo de um projeto usando git. <\/p>\n\n\n\n<p>O VCS registra todas as altera\u00e7\u00f5es, revis\u00f5es e atualiza\u00e7\u00f5es realizadas a partir de dados como data e identidade do autor, por meio de c\u00f3digos de letras ou n\u00fameros.<\/p>\n\n\n\n<p>Essas informa\u00e7\u00f5es <strong>permitem controlar as mudan\u00e7as de um projeto e gerenciar a configura\u00e7\u00e3o de software de forma sistematizada<\/strong>. <\/p>\n\n\n\n<p>Quando uma vers\u00e3o precisa de testes, <strong>o git pull mescla as altera\u00e7\u00f5es e consolida todas as atualiza\u00e7\u00f5es do projeto no branch atual<\/strong>.<\/p>\n\n\n\n<p><em><a href=\"https:\/\/www.locaweb.com.br\/blog\/produtos\/certificado-ssl\/certificado-ssl-para-que-serve\/\" target=\"_blank\" rel=\"noreferrer noopener\">+ Certificado SSL: a seguran\u00e7a do seu site em suas m\u00e3os<\/a><\/em><\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Como usar o git pull?<\/strong><\/h2>\n\n\n\n<p>O comando git pull serve para recuperar e baixar o conte\u00fado de um reposit\u00f3rio remoto e atualizar o reposit\u00f3rio local assim que ele for baixado. <strong>Isso \u00e9 muito \u00fatil em fluxos de trabalho de colabora\u00e7\u00e3o que precisam mesclar altera\u00e7\u00f5es upstream remotas no reposit\u00f3rio local<\/strong>.<\/p>\n\n\n\n<p>Como dito, <strong>o git pull \u00e9 uma combina\u00e7\u00e3o de dois comandos, git fetch seguido por git merge<\/strong>. <\/p>\n\n\n\n<p>No primeiro est\u00e1gio, \u00e9 executado o git fetch, que baixa o conte\u00fado do reposit\u00f3rio remoto necess\u00e1rio. <\/p>\n\n\n\n<p>Em seguida, o comando git merge combina v\u00e1rias sequ\u00eancias de commits em uma \u00fanica ramifica\u00e7\u00e3o.<\/p>\n\n\n\n<p>Confira cinco usos do git pull.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>1. Integra\u00e7\u00e3o<\/strong><\/h3>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"812\" height=\"457\" src=\"https:\/\/www.locaweb.com.br\/blog\/wp-content\/uploads\/2023\/02\/Git-pull-1-min.jpg\" alt=\"\" class=\"wp-image-39193\"\/><figcaption class=\"wp-element-caption\">(Fonte: Openclipart\/Reprodu\u00e7\u00e3o)<\/figcaption><\/figure>\n\n\n\n<p>O git pull n\u00e3o apenas faz o download de novas altera\u00e7\u00f5es do reposit\u00f3rio remoto como <strong>tamb\u00e9m os integra diretamente na filial HEAD local<\/strong>. Por padr\u00e3o, <strong>essa integra\u00e7\u00e3o acontece por meio de um &#8220;merge&#8221;<\/strong>, mas tamb\u00e9m pode ser realizada por um &#8220;rebase&#8221;: $ git pull origin master \u2013 rebase.<\/p>\n\n\n\n<p>Se n\u00e3o \u00e9 necess\u00e1rio integrar novas mudan\u00e7as diretamente, ent\u00e3o pode ser usado o git fetch. <\/p>\n\n\n\n<p>Isso s\u00f3 far\u00e1 o download de novas mudan\u00e7as, deixando a ramifica\u00e7\u00e3o HEAD e os arquivos de c\u00f3pia de trabalho intocados.<\/p>\n\n\n\n<p>$ git fetch origin<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>2. Comando simples<\/strong><\/h3>\n\n\n\n<p>Na maioria dos casos, <strong>a filial HEAD local j\u00e1 tem uma conex\u00e3o de rastreamento adequada configurada com uma filial remota<\/strong>. <\/p>\n\n\n\n<p>Essa configura\u00e7\u00e3o<strong> fornece valores padr\u00e3o para que o comando pull j\u00e1 saiba de onde extrair<\/strong> sem nenhuma op\u00e7\u00e3o adicional.<\/p>\n\n\n\n<p>Isso significa que, se uma conex\u00e3o de rastreamento foi configurada, a nomea\u00e7\u00e3o do reposit\u00f3rio pode ser omitida, bem como a ramifica\u00e7\u00e3o, usando o comando de forma simples: $ git pull.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>3. Pull request<\/strong><\/h3>\n\n\n\n<p><strong>Um projeto que recebe diversas colabora\u00e7\u00f5es<\/strong>, algumas simult\u00e2neas, est\u00e1 <strong>mais suscet\u00edvel a sofrer conflitos<\/strong>. <\/p>\n\n\n\n<p>Por isso, o git tem uma<strong> v\u00e1lvula de seguran\u00e7a para garantir a consolida\u00e7\u00e3o mais est\u00e1vel das in\u00fameras contribui\u00e7\u00f5es<\/strong>. <\/p>\n\n\n\n<p>O pull request coloca para avalia\u00e7\u00e3o um <strong>fork<\/strong>, uma ramifica\u00e7\u00e3o do projeto principal que permite altera\u00e7\u00f5es sem modificar o c\u00f3digo principal, que passa por uma revis\u00e3o antes de ser incorporado ao arquivo principal.<\/p>\n\n\n\n<p>Esse comando \u00e9 realizado por meio da plataforma <a href=\"https:\/\/blog.locaweb.com.br\/temas\/codigo-aberto\/veja-4-comunidades-que-todos-os-programadores-precisam-participar\/\" target=\"_blank\" rel=\"noreferrer noopener\">GitHub<\/a>, e n\u00e3o direto no terminal. Para tanto, <strong>\u00e9 preciso navegar at\u00e9 o reposit\u00f3rio onde o fork foi realizado e clicar em \u201cnew pull request\u201d<\/strong>. <\/p>\n\n\n\n<p>O usu\u00e1rio pode escrever um coment\u00e1rio para explicar qual altera\u00e7\u00e3o est\u00e1 sendo solicitada e facilitar o trabalho dos revisores.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>4. Altera\u00e7\u00e3o de pull request<\/strong><\/h3>\n\n\n\n<p>Mesmo ap\u00f3s fazer um <strong>pull request<\/strong>, a proposta de altera\u00e7\u00e3o no branch principal <strong>pode ser modificada<\/strong>. Isso <strong>permite que o desenvolvedor corrija algum erro ou aperfei\u00e7oe o c\u00f3digo<\/strong> antes de a solicita\u00e7\u00e3o ser avaliada.<\/p>\n\n\n\n<p>Para tanto, ainda dentro da plataforma GitHub, logo abaixo do nome do reposit\u00f3rio, \u00e9 preciso selecionar \u201cpull requests\u201d.<\/p>\n\n\n\n<p>Ap\u00f3s escolher qual branch modificar, deve-se clicar em \u201cedit\u201d. <\/p>\n\n\n\n<p>As altera\u00e7\u00f5es podem ser comparadas ao selecionar a branch base no menu suspenso. <\/p>\n\n\n\n<p>Por fim, um alerta aparece para informar que alguns commits antigos poder\u00e3o ser removidos. <\/p>\n\n\n\n<p>Basta clicar em \u201cchange base\u201d e realizar as modifica\u00e7\u00f5es que desejar, as quais ser\u00e3o incorporadas ao pull request e enviadas para revis\u00e3o.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>5. Revis\u00e3o de pull request<\/strong><\/h3>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img decoding=\"async\" width=\"812\" height=\"500\" src=\"https:\/\/www.locaweb.com.br\/blog\/wp-content\/uploads\/2023\/02\/Git-pull-02-min.jpg\" alt=\"Desenvolvedor utilizando o comando Git Pull.\" class=\"wp-image-39194\" style=\"width:609px;height:375px\"\/><figcaption class=\"wp-element-caption\">(Fonte: Bench Accounting\/Unsplash\/Reprodu\u00e7\u00e3o)<\/figcaption><\/figure>\n<\/div>\n\n\n<p>Ap\u00f3s enviado, <strong>o pull request fica \u00e0 disposi\u00e7\u00e3o dos revisores<\/strong>, que avaliam o arquivo antes da aprova\u00e7\u00e3o e incorpora\u00e7\u00e3o no branch principal, al\u00e9m de deixar coment\u00e1rios individuais e at\u00e9 solicita\u00e7\u00f5es de altera\u00e7\u00f5es adicionais.<\/p>\n\n\n\n<p><strong>Apenas membros selecionados de uma equipe<\/strong> podem fazer a revis\u00e3o. Mesmo que o revisor reprove a proposta, um propriet\u00e1rio ou administrador pode aprovar um pull request; isso permite que o trabalho continue, mesmo que um revisor tenha deixado a equipe.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>6. Aprova\u00e7\u00e3o e mescla de pull request<\/strong><\/h3>\n\n\n\n<p>O revisor pode optar apenas por enviar coment\u00e1rios e recomenda\u00e7\u00f5es sem, necessariamente, mesclar as altera\u00e7\u00f5es com o branch principal. <\/p>\n\n\n\n<p>Dessa maneira, permite que outros revisores, administradores e propriet\u00e1rios possam analisar o pull request antes da aprova\u00e7\u00e3o. Em alguns casos, h\u00e1 um n\u00famero m\u00ednimo de revis\u00f5es antes da mesclagem.<\/p>\n\n\n\n<p>Ap\u00f3s realizada,<strong> a consolida\u00e7\u00e3o da proposta de pull request n\u00e3o pode ser desfeita<\/strong>; por isso, quem aprova e, por consequ\u00eancia, permite a mesclagem, deve analisar todas as revis\u00f5es. <\/p>\n\n\n\n<p><strong>Se houver v\u00e1rios pull requests, apenas uma proposta poder\u00e1 ser aprovada de cada vez<\/strong>, para evitar conflitos no arquivo final.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>7. Atualiza\u00e7\u00e3o de reposit\u00f3rio local<\/strong><\/h3>\n\n\n\n<p>Depois de aprovar as altera\u00e7\u00f5es no branch principal, \u00e9 necess\u00e1rio, mais uma vez, <strong>atualizar o reposit\u00f3rio local<\/strong>. Isso pode ser realizado direto do terminal, <strong>com o comando simples: $ git pull<\/strong>.<\/p>\n\n\n\n<p>Assim, fica garantido que as vers\u00f5es dos arquivos no reposit\u00f3rio local ser\u00e3o as mesmas que as hospedadas remotamente.<\/p>\n\n\n\n<div class=\"user-cta-block\" style=\"background-color:#2E333C;\"><p>Est\u00e1 precisando de ajuda para transformar seu neg\u00f3cio? Conhe\u00e7a o SSL LOCAWEB, um certificado https que garante aos visitantes e clientes uma navega\u00e7\u00e3o segura.&nbsp;<\/p><a class=\"user-cta\" style=\"background-color: #00acc8\n;\" href=\"https:\/\/bit.ly\/3xdWsQI:;\" target=\"_blank\" rel=\"noopener\">Clique aqui<\/a><\/div>\n\n\n\t\t<div class=\"wp-block-web-stories-embed web-stories-embed aligncenter\">\n\t\t\t<div class=\"wp-block-embed__wrapper\" style=\"--aspect-ratio: 0.600000; --width: 360px; --height: 600px\">\n\t\t\t\t<amp-story-player>\n\t\t\t\t\t<a href=\"https:\/\/blog.locaweb.com.br\/web-stories\/codigo-fechado-codigo-aberto\/\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\tsrc=\"https:\/\/www.locaweb.com.br\/blog\/wp-content\/uploads\/2022\/05\/codigo-aberto-codigo-fechado.png\"\n\t\t\t\t\t\t\t\twidth=\"360\"\n\t\t\t\t\t\t\t\theight=\"600\"\n\t\t\t\t\t\t\t\talt=\"C\u00f3digo aberto e C\u00f3digo fechado: o que s\u00e3o?\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tloading=\"lazy\"\n\t\t\t\t\t\t\t\tdecoding=\"async\"\n\t\t\t\t\t\t\t\tdata-amp-story-player-poster-img\n\t\t\t\t\t\t\t\/>\n\t\t\t\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t<\/amp-story-player>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>O git pull \u00e9 ideal para gerenciar e controlar as vers\u00f5es de um arquivo em um projeto de desenvolvimento de forma colaborativa<\/p>\n","protected":false},"author":24,"featured_media":39195,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[5],"tags":[],"class_list":["post-39192","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-codigo-aberto"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.locaweb.com.br\/blog\/wp-json\/wp\/v2\/posts\/39192","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.locaweb.com.br\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.locaweb.com.br\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.locaweb.com.br\/blog\/wp-json\/wp\/v2\/users\/24"}],"replies":[{"embeddable":true,"href":"https:\/\/www.locaweb.com.br\/blog\/wp-json\/wp\/v2\/comments?post=39192"}],"version-history":[{"count":9,"href":"https:\/\/www.locaweb.com.br\/blog\/wp-json\/wp\/v2\/posts\/39192\/revisions"}],"predecessor-version":[{"id":50056,"href":"https:\/\/www.locaweb.com.br\/blog\/wp-json\/wp\/v2\/posts\/39192\/revisions\/50056"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.locaweb.com.br\/blog\/wp-json\/wp\/v2\/media\/39195"}],"wp:attachment":[{"href":"https:\/\/www.locaweb.com.br\/blog\/wp-json\/wp\/v2\/media?parent=39192"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.locaweb.com.br\/blog\/wp-json\/wp\/v2\/categories?post=39192"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.locaweb.com.br\/blog\/wp-json\/wp\/v2\/tags?post=39192"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}