Modelo de bifurcação e pull
No modelo de fork e pull, qualquer pessoa pode criar fork de um repositório existente ("upstream") ao qual tem acesso de leitura – e o proprietário do repositório upstream permite. Lembre-se de que um fork e seu upstream compartilham os mesmos dados do git. Isso significa que todo o conteúdo carregado em um fork pode ser acessado a partir do upstream e de todos os outros forks desse upstream. Você não precisa de permissão do repositório upstream para enviar por push para um fork do próprio repositório que você criou. Opcionalmente, você pode permitir que qualquer pessoa com acesso push ao repositório upstream faça alterações no branch de pull request. Esse modelo é popular entre projetos de código aberto, pois reduz a resistência de novos contribuidores, além de permitir que as pessoas trabalhem de modo independente sem coordenação inicial.
Dica: Para obter mais informações sobre o código aberto, especificamente como criar e expandir um projeto de código aberto, criamos os Guias de Código Aberto, que ajudarão você a promover uma comunidade de código aberto benéfica. Você também pode fazer um curso gratuito de GitHub Skills sobre como manter comunidades de código aberto.
Modelo de repositório compartilhado
No modelo de repositório compartilhado, os colaboradores recebem acesso de push a um só repositório compartilhado, e os branches do tópico são criados quando as alterações precisam ser feitas. As pull requests são úteis nesse modelo, uma vez que iniciam a revisão de código e a discussão geral sobre um conjunto de alterações antes que elas sofram merge no branch de desenvolvimento principal. Esse modelo é mais predominante em equipes e organizações pequenas que colaboram em projetos privados.