Skip to content

Instantly share code, notes, and snippets.

@rdeavila
Last active February 19, 2024 16:02
Show Gist options
  • Save rdeavila/9618969 to your computer and use it in GitHub Desktop.
Save rdeavila/9618969 to your computer and use it in GitHub Desktop.
Git: como atualizar um fork com as mudanças do original?
#!/bin/bash
# Adicione um novo remote; pode chamá-lo de "upstream":
git remote add upstream https://github.com/usuario/projeto.git
# Obtenha todos os branches deste novo remote,
# como o upstream/master por exemplo:
git fetch upstream
# Certifique-se de que você está no branch master:
git checkout master
# Reescreva o seu branch master, de forma que os seus commits
# que não estão no projeto original apareçam, e que os seus
# commits fiquem no topo da lista:
git rebase upstream/master
# Se você não quiser reescrever o histórico do seu branch master
# (talvez porque alguém já o tenha clonado) então você deve
# substituir o último comando por um
git merge upstream/master
# No entanto, para fazer com que futuros pull requests fiquem o mais
# limpos possível, é uma boa ideia fazer o rebase.
# Se você fez o rebase do seu branch a partir de upstream/master, talvez
# você precise forçar um push para o seu próprio repositório do Github.
# Você pode fazer isso com:
git push -f origin master
# VocÊ vai precisar fazer isso com o -f apenas na primeira vez que você
# faz um rebase.
@rafaelfernandesmb
Copy link

se eu for o dono do original e quiser fazer um merge com alguma fork como eu faria isso?

(não manjo muito de git, mas se eu nao tiver sido claro posso tentar explicar melhor)

@ismaelgasparin
Copy link

@rafaelfernandesmb acredito que você possa fazer o mesmo procedimento, pois o primeiro comando adiciona um novo remote, independente se é o original ou um fork.

@bernardbr
Copy link

Valeu @rdeavila!
👏 👏

@jobdiogenes
Copy link

"se eu for o dono do original e quiser fazer um merge com alguma fork como eu faria isso?"

não seria o caso de aceitar os pedidos de commit?

@tiagotele
Copy link

Muito bom!

@rafasilveira
Copy link

se eu for o dono do original e quiser fazer um merge com alguma fork como eu faria isso?

(não manjo muito de git, mas se eu nao tiver sido claro posso tentar explicar melhor)

"se eu for o dono do original e quiser fazer um merge com alguma fork como eu faria isso?"

não seria o caso de aceitar os pedidos de commit?

A pessoa que fez o fork pode abrir uma pull request do repositório dela para o original. Aí você verifica o código, valida ele, e se estiver ok faz o merge

@jobdiogenes
Copy link

jobdiogenes commented Oct 19, 2020 via email

@gustavobite
Copy link

Muito bom!

@mlssystem
Copy link

👍 TKS!

@Lufims
Copy link

Lufims commented Mar 11, 2022

Como eu faço para atualizar o meu fork, sendo que fala que está 3 commits adiantado e 7 atrasado. Eu quero apenas atualizar o meu já que eles já atualizaram o arquivo no repositório original.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment