Skip to main content

Sobre bifurcações

Uma bifurcação é uma cópia de um repositório que você gerencia. As bifurcações permitem fazer alterações em um projeto sem afetar o repositório original. Você pode fazer fetch de atualizações no repositório ou enviar alterações ao repositório original com pull requests.

Bifurcar um repositório é semelhante a copiar um repositório, com duas grandes diferenças:

  • Use uma solicitação de pull para sugerir alterações do fork pertencente ao usuário para o repositório original na sua instância do GitHub, também conhecida como repositório upstream.

  • Você pode transmitir alterações do repositório upstream para a sua bifurcação local sincronizando a bifurcação com o repositório upstream.

    Se você tiver acesso a um repositório privado e o proprietário permitir a criação de fork, poderá criar fork do repositório para sua conta pessoal ou uma organização no GitHub Team em que terá permissões de criação de repositório. Não é possível criar forks de um repositório privado em uma organização que usa o GitHub Free. Para obter mais informações, confira "Produtos do GitHub".

Se você for membro de uma enterprise with managed users, existem outras restrições nos repositórios de que você pode criar fork. Os Managed user accounts não podem criar fork de repositórios de fora da empresa. Managed user accounts pode criar fork de repositórios privados ou internos pertencentes a organizações da empresa em seu namespace de conta de usuário ou em outras organizações pertencentes à empresa, conforme especificado pela política corporativa. Para obter mais informações, confira "Sobre os Enterprise Managed Users" na documentação do GitHub Enterprise Cloud.

Você pode usar GitHub Desktop para bifurcar um repositório. Para obter mais informações, confira "Como clonar repositórios e criar forks deles no GitHub Desktop".

Excluir uma bifurcação não exclui o repositório upstream original. Faça as alterações desejadas no seu fork (adicione colaboradores, renomeie arquivos, gere GitHub Pages) sem nenhum efeito sobre o original. Não é possível restaurar um repositório com fork excluído. Para obter mais informações, confira "Como restaurar um repositório excluído".

Em projetos de código aberto, as bifurcações são usadas com frequência para iterar ideias ou alterações antes que elas sejam oferecidas de volta ao repositório upstream. Ao fazer alterações na bifurcação do usuário e abrir um pull request que compara seu trabalho com o repositório upstream, você pode dar a qualquer pessoa com acesso push à permissão do repositório upstream para fazer push das alterações para seu branch de pull request (incluindo a exclusão do branch). Isso agiliza a colaboração ao permitir que os mantenedores de repositório façam commits ou executem testes localmente em seu branch de pull requests a partir de uma bifurcação de propriedade do usuário antes de fazer merge. Você não pode dar permissões de push a uma bifurcação de propriedade de uma organização.

As bifurcações privadas herdam a estrutura de permissões do repositório ascendente ou principal. Isso ajuda os proprietários de repositórios privados a manter o controle sobre seus códigos. Por exemplo, se o repositório ascendente é privado e fornece acesso de leitura/gravação a uma equipe, essa equipe terá acesso de leitura/gravação para qualquer bifurcação do repositório privado ascendente. Somente as permissões de equipe (não as permissões individuais) são herdadas por forks privados.

Se você deseja criar um novo repositório a partir do conteúdo de um repositório existente, mas não quer fazer merge das suas alterações no upstream posteriormente, você poderá duplicar o repositório ou, se o repositório for um modelo, você poderá usar o repositório como um modelo. Para obter mais informações, confira "Como duplicar um repositório" e "Como criar um repositório com base em um modelo".

Leitura adicional