Em seu fork do github, você precisa manter seu branch master limpo, ou seja, limpo sem nenhuma alteração, assim você pode criar a qualquer momento um branch de seu master. Cada vez que você quiser cometer um bug ou recurso, você precisa criar um branch para ele, que será de alguma forma a cópia do seu branch master.
Quando você fizer uma solicitação pull em um branch, poderá continuar a trabalhar em outro branch e fazer outra solicitação pull neste outro branch.
Antes de criar um novo branch e extrair as mudanças do upstream, seu master precisa estar atualizado.
Crie o branch em sua máquina local:
$ git branch <nome do seu novo branch>
Empurre o branch no github:
$ git push origin <nome do seu novo branch>
Mude para sua nova filial:
$ git checkout <nome do seu novo ramo>
Quando você quiser comprometer algo em seu branch, certifique-se de estar em seu branch
Você pode ver todos os ramos criados usando
$ git branch
Que mostrará:
- aprovação_mensagens
mestre
master_clean
Adicione um novo controle remoto para sua filial:
$ git remote add <name of your_remote> <url>
Envie as alterações do seu commit para o seu branch:
$ git push origin <name of your_remote>
Exclua um branch em seu sistema de arquivos local:
$ git branch -d <nome do seu novo branch>
Exclua o branch no github:
$ git push origin: <name of your new branch>
A única diferença é: dizer delete.
Se você deseja alterar o branch padrão, é tão fácil com o github, em seu fork, vá para Admin e na lista suspensa o branch padrão escolha o que deseja.