Então, aqui está um fluxo de trabalho típico no Github ...
Como algum projeto
->bifurca-se->git clone https://github.com/you/someproject.Projeto aberto. Gosta do que vê, mas faça algumas alterações.
Tendo cuidado de trabalhar apenas em
feature-branch(git checkout -b some-feature), você decide fazer uma solicitação de recebimento com oupstreammantenedor - depois de empurrá-lofeature-branchpara o garfo do Github.O mantenedor, por qualquer motivo, recusa a atração.
Por exemplo ... aqui está uma solicitação pull que enviei que corresponde ao cenário acima. ..
Agora normalmente , se o mantenedor tinha fundido a atração ... o fluxo de trabalho seria simples ... Na minha máquina local, eu iria cometer quaisquer alterações locais sobre o que feature-brancheu estava no momento ... git fetch --all, git checkout master, git pull upstream --ff-only. Em seguida, reproduza minhas alterações em cima disso, conforme desejado ...
MAS...
E se eu decidir que você deseja continuar trabalhando com as alterações no meu fork, independentemente de tudo ... e ainda assim desejar acompanhar + mesclar as alterações que acontecerem upstream? Normalmente, eu excluiria a ramificação de recursos e seguiria em frente. Como você pode manter uma masterramificação capaz de ser mesclada a montante, mantendo os recursos do garfo enquanto está "permanentemente desconectada" dos upstream' HEAD?