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.

Members of an enterprise with managed users cannot fork repositories from outside of the enterprise or fork internal repositories.

Sobre bifurcações

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. Você pode bifurcar um repositório para criar uma cópia do repositório e fazer alterações sem afetar o repositório upstream. Para obter mais informações, consulte "Trabalhando com as bifurcações".

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.

Para obter mais informações sobre a aplicação dos princípios de código aberto ao trabalho de desenvolvimento da sua organização em GitHub, consulte o white paper de GitHub "Uma introdução ao innersource."

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.com.

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.

Pré-requisitos

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.

Bifurcar um repositório

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.

  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)

Para saber mais sobre GitHub CLI, consulte "Sobre GitHub CLI."

Para criar a bifurcação de um repositório, use o subcomando gh repo fork.

gh repo fork repository

Para criar a bifurcação em uma organização, use o sinalizador --org.

gh repo fork repository --org "octo-org"

Clonando o seu repositório bifurcado

Agora, você tem uma bifurcação do repositório Spoon-Knife, mas você não tem os arquivos nesse repositório localmente no seu computador.

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

  2. Acima da lista de arquivos, clique em código. Botão de "Código"

  3. Para clonar o repositório usando HTTPS, em "Clonar com HTTPS", clique em . Para clonar o repositório usando uma chave SSH, incluindo um certificado emitido pela autoridade certificada de SSH da sua organização clique em Usar SSH e, em seguida, clique em . Para clonar um repositório que usa GitHub CLI, clique Usar GitHub CLI e, em seguida, clique em . O ícone da área de transferência para copiar a URL para clonar um repositório

    O ícone da área de transferência para copiar a URL para clonar um repositório com o CLI do GitHub

  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.

Para saber mais sobre GitHub CLI, consulte "Sobre GitHub CLI."

Para criar um clone da sua bifurcação, use o sinalizador --clone.

gh repo fork repository --clone=true
  1. No menu File (Arquivo), clique em Clone Repository (Clonar repositório).

    Opção de menu Clone (Clonar) no app Mac

    Opção de menu Clone (Clonar) no app Windows

  2. Clique na aba que corresponde à localização do repositório que você deseja clonar. Você também pode clicar URL para inserir manualmente o local do repositório.

    Guias Location (Local) no menu Clone a repository (Clonar um repositório)

    Guias Location (Local) no menu Clone a repository (Clonar um repositório)

  3. Escolha o repositório que você quer clonar na lista.

    Clonar uma lista de repositórios

    Clonar uma lista de repositórios

  4. Clique em Escolher... e acesse um caminho local onde você deseja clonar o repositório.

    Botão Choose (Escolher)

    Botão Choose (Escolher)

  5. Clique em Clone (Clonar).

    Botão Clone (Clonar)

    Botão Clone (Clonar)

Configurar o Git para sincronizar a bifurcação com o repositório 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. Acima da lista de arquivos, clique em código. Botão de "Código"

  3. Para clonar o repositório usando HTTPS, em "Clonar com HTTPS", clique em . Para clonar o repositório usando uma chave SSH, incluindo um certificado emitido pela autoridade certificada de SSH da sua organização clique em Usar SSH e, em seguida, clique em . Para clonar um repositório que usa GitHub CLI, clique Usar GitHub CLI e, em seguida, clique em . O ícone da área de transferência para copiar a URL para clonar um repositório

    O ícone da área de transferência para copiar a URL para clonar um repositório com o CLI do GitHub

  4. Abra TerminalTerminalGit Bash.

  5. Mude os diretórios para a localidade da bifurcação que você clonou.

    • 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".

Para saber mais sobre GitHub CLI, consulte "Sobre GitHub CLI."

Para configurar um repositório remoto para o repositório bifurcado, use o sinalizador --remote.

gh repo fork repository --remote=true

Para especificar o nome do repositório remoto, use o sinalizador --remote-name.

gh repo fork repository --remote-name "main-remote-repo"

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. Você pode criar um fork de um repositório para a sua conta de usuário ou para qualquer organização onde você tenha permissões de criação de repositório. Para obter mais informações, consulte "Níveis de permissão para uma organização".

Se você tem acesso a um repositório privado e o proprietário permite a bifurcação, você pode criar um fork do repositório para a conta do usuário ou para qualquer organização em GitHub Team onde você tem permissões de criação de repositório. Você não pode criar um repositório privado para uma organização usando GitHub Free. Para obter mais informações, consulte "produtos do GitHub."

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. Para obter mais informações sobre a clonagem da bifurcação e sincronizar as alterações em um repositório bifurcado a partir do seu computador"Configurar o Git".

Você também pode criar um novo repositório onde você pode colocar todos os seus projetos e compartilhar o código em GitHub. Para obter mais informações, consulte "Criar um repositório".

Cada repositório em GitHub pertence a uma pessoa ou organização. Você pode interagir com as pessoas, repositórios e organizações, conectando-se e seguindo-as em GitHub. Para obter mais informações, consulte "Seja social".

GitHub tem uma ótima comunidade de suporte onde você pode pedir ajuda e conversar com pessoas de todo o mundo. Junte-se à conversa na Comunidade de Suporte do Github.

Esse documento ajudou você?

Política de Privacidade

Ajude-nos a tornar esses documentos ótimos!

Todos os documentos do GitHub são de código aberto. Você percebeu que algo que está errado ou não está claro? Envie um pull request.

Faça uma contribuição

Ou, aprenda como contribuir.