Publicamos atualizações frequentes em nossa documentação, e a tradução desta página ainda pode estar em andamento. Para obter as informações mais recentes, acesse a documentação em inglês. Se houver problemas com a tradução desta página, entre em contato conosco.

Bifurcar um repo

Uma bifurcação é uma cópia de um repositório. Bifurcar um repositório permite que você faça experiências à vontade sem comprometer o projeto original.

Neste artigo

Did this doc help you?

O uso mais comum das bifurcações são propostas de mudanças no projeto de alguma outra pessoa ou o uso do projeto de outra pessoa como ponto de partida para sua própria ideia.

Proponha mudanças no projeto de outra pessoa

Por exemplo, você pode usar bifurcações para propor alterações relacionadas à correção de um bug. Em vez de registrar um erro encontrado, é possível:

  • Bifurcar o repositório.
  • Fazer a correção.
  • Enviar um pull request ao proprietário do projeto.

Use o projeto de outra pessoa como ponto de partida para sua própria ideia.

O software de código aberto baseia-se na ideia de que ao compartilhar códigos, podemos criar softwares melhores e mais confiáveis. Para obter mais informações, consulte "Sobre a Iniciativa Open Source" em Iniciativa Open Source.

Ao criar um repositório público a partir de uma bifurcação do projeto de outra pessoa, confirme que incluiu um arquivo de licença que estabelece como você quer que seu projeto seja compartilhado com outros. Para obter mais informações, consulte Escolha uma licença de código aberto" em choosealicense.

Para mais informações sobre código aberto, especificamente como criar e crescer um projeto de código aberto, Criamos Guias em Código Aberto que ajudarão você a fomentar uma comunidade de código aberto saudável, recomendando as melhores práticas para a criação e manutenção de repositórios para seu projeto de código aberto. Você também pode participar de um curso gratuito GitHub Learning Lab sobre a manutenção de comunidades de código aberto.

Observação: You can use GitHub Desktop to fork a repository. For more information, see “Cloning and forking repositories from GitHub Desktop."

Dica: Você também pode bifurcar um repositório usando o GitHub CLI. Para obter mais informações, consulte "bifurcação do repositório gh" na documentação do GitHub CLI.

Bifurque um exemplo de repositório

Bifurcar um repositório é um processo fácil, de duas etapas. Criamos um repositório para você usar para treinar.

  1. Em GitHub, navegue até o repositório octocat/Spoon-Knife.
  2. No canto superior direito da página, clique em Fork (Bifurcação).
    Botão Fork (Bifurcação)

Mantenha sua bifurcação sincronizada

Você pode bifurcar um projeto para propor alterações no repositório upstream ou original. Nesse caso, uma boa prática é sincronizar regularmente sua bifurcação com o repositório upstream. Para isso, é necessário usar Git na linha de comando. Pratique configurando o repositório upstream com o mesmo repositório octocat/Spoon-Knife que você acabou de bifurcar.

Etapa 1: Configure o Git

Se ainda não o fez, primeiro configure o Git. Lembre-se também de configurar a autenticação para GitHub a partir do Git.

Etapa 2: Crie um clone local de sua bifurcação

Agora você tem uma bifurcação do repositório Spoon-Knife, mas não os arquivos daquele repositório em seu computador. Vamos criar um clone da sua bifurcação localmente em seu computador.

  1. Em GitHub, vá até your fork (sua bifurcação) no repositório Spoon-Knife.

  2. Above the list of files, click Code.

    "Code" button

  3. To clone the repository using HTTPS, under "Clone with HTTPS", click . To clone the repository using an SSH key, including a certificate issued by your organization's SSH certificate authority, click Use SSH, then click . To clone a repository using GitHub CLI, click Use GitHub CLI, then click .

    The clipboard icon for copying the URL to clone a repository

    The clipboard icon for copying the URL to clone a repository with GitHub CLI

  4. Abra TerminalTerminalGit Bash.

  5. Altere o diretório de trabalho atual para o local em que deseja ter o diretório clonado.

  6. Digite git clone (clonar git) e cole a URL que você copiou anteriormente. Ficará assim, com seu GitHub nome de usuário no lugar de YOUR-USERNAME:

    $ git clone https://github.com/YOUR-USERNAME/Spoon-Knife
  7. Pressione Enter. Seu clone local estará criado.

    $ git clone https://github.com/YOUR-USERNAME/Spoon-Knife
    > Clonando para `Spoon-Knife`...
    > remote: Contando objetos: 10, concluído.
    > remote: Compactando objetos: 100% (8/8), concluído.
    > remove: Total 10 (delta 1), reused 10 (delta 1)
    > Unpacking objects: 100% (10/10), done.

Agora você já tem uma cópia local de sua bifurcação do repositório Spoon-Knife.

Etapa 3: Configure o Git para sincronizar sua bifurcação com o repositório Spoon-Knife original

Ao bifurcar um projeto para propor mudanças no repositório original, é possível configurar o Git para fazer pull de mudanças do repositório original ou upstream no clone local de sua bifurcação.

  1. Em GitHub, vá até o repositório octocat/Spoon-Knife.

  2. Above the list of files, click Code.

    "Code" button

  3. To clone the repository using HTTPS, under "Clone with HTTPS", click . To clone the repository using an SSH key, including a certificate issued by your organization's SSH certificate authority, click Use SSH, then click . To clone a repository using GitHub CLI, click Use GitHub CLI, then click .

    The clipboard icon for copying the URL to clone a repository

    The clipboard icon for copying the URL to clone a repository with GitHub CLI

  4. Abra TerminalTerminalGit Bash.

  5. Mude os diretórios do local que você clonou a bifurcação na Etapa 2: Crie um clone local de sua bifurcação.

    • Para acessar seu diretório pessoal, apenas digite cd sem nenhum outro texto.
    • Para listar os arquivos e pastas em seu diretório atual, digite ls.
    • Para acessar um dos diretórios listados, digite cd your_listed_directory.
    • Para acessar um diretório, digite cd ...
  6. Digite git remote -v e pressione Enter. Você verá o repositório remote atual configurado para sua bifurcação.

    $ git remote -v
    > origin  https://github.com/YOUR_USERNAME/YOUR_FORK.git (fetch)
    > origin  https://github.com/YOUR_USERNAME/YOUR_FORK.git (push)
  7. Digite git remote add upstream, cole a URL que você copiou na etapa 2 e pressione Enter. Ficará assim:

    $ git remote add upstream https://github.com/octocat/Spoon-Knife.git
  8. Para verificar o novo repositório upstream que você especificou para sua bifurcação, digite novamente git remote -v. Você deverá visualizar a URL da sua bifurcação como origin (origem) e a URL do repositório original como upstream.

    $ git remote -v
    > origin    https://github.com/YOUR_USERNAME/YOUR_FORK.git (fetch)
    > origin    https://github.com/YOUR_USERNAME/YOUR_FORK.git (push)
    > upstream  https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git (fetch)
    > upstream  https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git (push)

Agora é possível manter a bifurcação sincronizada com o repositório upstream usando apenas alguns comandos Git. Para obter mais informações, consulte "Sincronizar uma bifurcação".

Próximas etapas

Você pode fazer alterações em uma bifurcação, incluindo:

  • Criar branches: os branches permitem desenvolver novos recursos ou testar novas ideias sem colocar o projeto atual em risco.
  • Abrir pull requests: caso queira fazer contribuições no repositório original, ao enviar uma pull request, você pode solicitar que o autor do repositório original faça pull de sua bifurcação no repositório dele.

Localize outro repositório para bifurcar

Bifurque um repositório para começar a contribuir com um projeto. You can fork any public repository to your user account or any organization where you have repository creation permissions. Para obter mais informações, consulte "Níveis de permissão para uma organização".

You can fork any private repository you can access to your user account and any organization on GitHub Team or GitHub Enterprise where you have repository creation permissions. You cannot fork a private repository to an organization using GitHub Free. For more information, see "GitHub's products."

Você pode navegar em Explore (Explorar) para encontrar projetos e começar a contribuir com repositórios de código aberto. Para obter mais informações, consulte "Encontrar maneiras de contribuir para o código aberto em GitHub."

Comemore

Você já bifurcou um repositório, treinou clonar sua bifurcação e configurou um repositório upstream. O que quer fazer agora?

Did this doc help you?