Por design, bifurcar um projeto cria um repositório separado que não é atualizado quando o repositório original é alterado. No entanto, git
facilita bastante a atualização manual.
Você precisa da ajuda de um terceiro repositório (sua cópia local é suficiente). Existem 3 repositórios:
- "Upstream": o repositório do projeto upstream no Github.
- "Origem": o repositório do seu fork no Github
- "Local": o seu repositório local no seu computador. Assumirei que você o criou clonando Fork usando
git clone git@github.com:your-username/projectname.git
e que todos estão usando o branch master
.
Supondo que atualmente "Origem" e "Local" estejam no mesmo estado, e "Upstream" esteja à frente em 1 ou mais confirmações (a mesclagem e quaisquer alterações subseqüentes).
Primeiro adicione o projeto upstream como um remoto Git :
git remote add upstream https://github.com/upstream-username/projectname.git
Em seguida, puxe (ou seja, busque e mescle automaticamente) as alterações da master
ramificação do controle remoto na ramificação atual ( master
) do seu repositório local :
git pull upstream master
Agora seu repositório local está sincronizado com upstream
. Por fim, envie seu repositório local ao seu fork do Github:
git push origin master
Agora tudo está sincronizado.