Atualizando seu Fork do GitHub

Jaime Neves
2 min readApr 13, 2018

--

Uma vez fiz um fork de um projeto no GitHub para ajudar em sua documentação. Fiz as minhas contribuições no projeto e criei um Pull Request no repositório de origem. Após o aceite das alterações, percebi que o meu repositório não estava atualizado de acordo com o repositório de origem, fiz umas pesquisas básicas e encontrei a solucão no próprio site do GitHub, aí vai…

Configurando um “remote” para seu Fork.

Devemos primeiro configurar um remote no Git que aponte para o repositório de origem (upstream), permitindo sincronizar alterações feitas no fork com o repositório de origem. Essa configuração também permitirá o inverso, alterações feitas no repositório de origem com o fork.

Vamos abordar a segunda opção, sincronizar as alterações feitas no repositório de origem com o fork.

Etapas:

  1. Abra o terminal.
  2. Liste os remotes configurados para seu fork.
$ git remote -vorigin  https://github.com/YOUR_USERNAME/YOUR_FORK.git (fetch)
origin https://github.com/YOUR_USERNAME/YOUR_FORK.git (push)

3. Crie um novo remote chamado upstream, apontando para o repositório de origem. Ele será responsável pela atualização do nosso fork.

Exemplo:

$ git remote add upstream [endereco_repositorio]

você deverá substitur [endereco_repositorio] pelo endereço do repositório que foi feito o fork.

Exemplo:

https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git

4. E por fim verifique suas alterações.

$ git remote -vorigin    https://github.com/YOUR_USERNAME/YOUR_FORK.git (fetch)
origin https://github.com/YOUR_USERNAME/YOUR_FORK.git (push)
upstream https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git (fetch)
upstream https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git (push)

origin: endereço de seu repositório (fork).

upstream: endereço do repositório de origem.

Realizar Sincronização do Fork.

  1. Baixe as atualizações do repositório de origem configurado em upstream.
$ git fetch upstreamremote: Counting objects: 75, done.
remote: Compressing objects: 100% (53/53), done.
remote: Total 62 (delta 27), reused 44 (delta 9)
Unpacking objects: 100% (62/62), done.
From https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY
* [new branch] master -> upstream/master

todos os commits feito para o master, serão armazenados em um branch local emupstream/master

2. Faça o checkout para o branch master.

$ git checkout masterSwitched to branch 'master'

3. Faça o merge das alterações feitas em upstream/master para o branch master local.

$ git merge upstream/masterUpdating a422352..5fdff0f
Fast-forward
README | 9 -------
README.md | 7 ++++++
2 files changed, 7 insertions(+), 9 deletions(-)
delete mode 100644 README
create mode 100644 README.md

após esses comandos seu fork estará com as últimas atualizações feitas no repositório de origem.

Até a próxima…

Links encontrados na pesquisa:

  1. https://www.sitepoint.com/quick-tip-sync-your-fork-with-the-original-without-the-cli/
  2. https://stackoverflow.com/questions/7244321/how-do-i-update-a-github-forked-repository
  3. https://help.github.com/articles/configuring-a-remote-for-a-fork/
  4. https://help.github.com/articles/syncing-a-fork/

--

--

Jaime Neves
Jaime Neves

Written by Jaime Neves

Front End Engineer — Reclame Aqui

Responses (1)