Git workflow para manutenção de uma bifurcação de extensão de projeto?

Nós bifuramos um projeto OSS no GitHub e adicionamos algumas extensões personalizadas a ele. Nós vamos querer enviar algumas das mudanças que fazemos no projeto original (correções de erros e outras), mas outras mudanças são extensões de recursos que os mantenedores originais do projeto não estão interessados ​​no momento. Estou tentando descobrir o melhor fluxo de trabalho para gerenciar essa situação.

Eu quero que nossa ramificação mestre contenha a soma de (commits do projeto original) + (nossas correções de bugs para contribuição) + (nossas extensões customizadas). Eu imagino que vamos querer um modelo de ramo por característica para que possamos manter as correções de bugs separadas das extensões personalizadas. Podemos iniciar ramificações de extensão personalizadas de nossa ramificação principal, mas acho que também queremos manter uma ramificação de "origem" local ou algo que rastreie o projeto original para que possamos iniciar ramificações de correção de erros de lá que não estão poluídas com nossa coisas personalizadas. Ou alguma coisa.

Alguém pode sugerir a melhor maneira de estruturar esse fluxo de trabalho de tal forma que todos os vários commits vão para onde devem ir e nenhum vai para onde não deveriam ir?

questionAnswers(2)

yourAnswerToTheQuestion