Sobre bifurcações
O uso mais comum das bifurcações é propor alterações no projeto de outra pessoa no qual você não tem acesso de gravação ou usar o projeto de outra pessoa como ponto de partida para uma ideia própria. 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, confira "Como trabalhar com forks".
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, você pode:
- Crie fork do 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, confira "Sobre a Open Source Initiative" na Open Source Initiative.
Para obter mais informações sobre como aplicar os princípios de código aberto ao trabalho de desenvolvimento da sua organização no your enterprise, confira o white paper "Uma introdução ao InnerSource" do GitHub".
Pré-requisitos
Caso ainda não tenha feito isso, primeiro, configure o Git. Não se esqueça de configurar também a autenticação no your enterprise por meio 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. Você pode praticar a configuração do repositório upstream usando o mesmo repositório octocat/Spoon-Knife do qual acabou de criar um fork.
- No your enterprise, navegue até o repositório octocat/Spoon-Knife.
- No canto superior direito da página, clique em Criar Fork.

- Selecione um proprietário para o repositório bifurcado.

- Por padrão, as bifurcações são nomeadas da mesma forma que os respectivos repositórios pai. Você pode alterar o nome da bifurcação para distingui-la ainda mais.

- Como opção, adicione uma descrição da bifurcação.

- Escolha se deseja copiar apenas o branch padrão ou todos os branches para a nova bifurcação. Para muitos cenários de bifurcação, como contribuir para projetos de código aberto, você só precisa copiar o branch padrão. Por padrão, somente o branch padrão é copiado.

- Clique em Criar bifurcação.

Observação: se você quiser copiar branches adicionais do repositório pai, poderá fazê-lo na página Branches. Para obter mais informações, confira "Criar e excluir branches no seu repositório".
Para saber mais sobre a GitHub CLI, confira "Sobre a GitHub CLI".
Para criar um fork de um repositório, use o subcomando gh repo fork.
gh repo fork repository
Para criar o fork 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 desse repositório localmente no seu computador.
-
No your enterprise, navegue até o seu fork do repositório Spoon-Knife.
-
Acima da lista de arquivos, clique em Código.

-
Copie a URL do repositório.
- Para clonar o repositório usando HTTPS, em "HTTPS", clique em .
- Para clonar o repositório usando uma chave SSH, incluindo um certificado emitido pela autoridade de certificação SSH da sua organização, clique em SSH e em .
- Para clonar um repositório usando GitHub CLI, clique em GitHub CLI e selecione .
1. Abra TerminalTerminalGit Bash. 4. Altere o diretório de trabalho atual para o local em que deseja ter o diretório clonado.
-
Digite
git clonee cole a URL já copiada. Ela terá esta aparência, com seu nome de usuário do GitHub AE em vez deYOUR-USERNAME:$ git clone https://hostname/YOUR-USERNAME/Spoon-Knife -
Pressione Enter. Seu clone local estará criado.
$ git clone https://hostname/YOUR-USERNAME/Spoon-Knife > Cloning into `Spoon-Knife`... > remote: Counting objects: 10, done. > remote: Compressing objects: 100% (8/8), done. > remote: Total 10 (delta 1), reused 10 (delta 1) > Unpacking objects: 100% (10/10), done.
Para saber mais sobre a GitHub CLI, confira "Sobre a GitHub CLI".
Para criar um clone do fork, use o sinalizador --clone.
gh repo fork repository --clone=true
-
No menu Arquivo, clique em Clonar Repositório.
1. Clique na aba que corresponde à localização do repositório que você deseja clonar. Clique também na **URL** para inserir o local do repositório manualmente.
1. Escolha o repositório que você quer clonar na lista.
1. Clique em **Escolher…** e procure um caminho local em que deseja clonar o repositório.
1. Clique em **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 alterações do repositório original ou upstream no clone local de sua bifurcação.
-
No your enterprise, navegue até o repositório octocat/Spoon-Knife.
-
Acima da lista de arquivos, clique em Código.

-
Copie a URL do repositório.
- Para clonar o repositório usando HTTPS, em "HTTPS", clique em .
- Para clonar o repositório usando uma chave SSH, incluindo um certificado emitido pela autoridade de certificação SSH da sua organização, clique em SSH e em .
- Para clonar um repositório usando GitHub CLI, clique em GitHub CLI e selecione .
1. Abra TerminalTerminalGit Bash.
-
Mude os diretórios para a localidade da bifurcação que você clonou.
- Para acessar o diretório base, digite apenas
cdsem nenhum outro texto. - Para listar os arquivos e as pastas do diretório atual, digite
ls. - Para entrar em um dos diretórios listados, digite
cd your_listed_directory. - Para subir um diretório, digite
cd ...
- Para acessar o diretório base, digite apenas
-
Digite
git remote -ve pressione Enter. Você verá o repositório remoto atual configurado para sua bifurcação.$ git remote -v > origin https://hostname/YOUR_USERNAME/YOUR_FORK.git (fetch) > origin https://hostname/YOUR_USERNAME/YOUR_FORK.git (push) -
Digite
git remote add upstream, cole a URL copiada na Etapa 3 e pressione Enter. Ele terá a seguinte aparência:$ git remote add upstream https://hostname/ORIGINAL_OWNER/Spoon-Knife.git -
Para verificar o novo repositório upstream especificado para a bifurcação, digite
git remote -vnovamente. Você verá a URL do fork comoorigine a URL do repositório original comoupstream.$ git remote -v > origin https://hostname/YOUR_USERNAME/YOUR_FORK.git (fetch) > origin https://hostname/YOUR_USERNAME/YOUR_FORK.git (push) > upstream https://hostname/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git (fetch) > upstream https://hostname/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, confira "Como sincronizar um fork".
Para saber mais sobre a GitHub CLI, confira "Sobre a GitHub CLI".
Para configurar um repositório remoto para o repositório com fork, 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"
Editando uma bifurcação
Você pode fazer alterações em uma bifurcação, incluindo:
- Como criar branches: os branches permitem que você crie recursos ou teste ideias sem colocar seu projeto principal em risco.
- Como abrir solicitações de pull: se você espera contribuir novamente para o repositório original, envie uma solicitação ao autor original para efetuar pull do fork no repositório enviando uma solicitação de pull.
Localize outro repositório para bifurcar
Bifurque um repositório para começar a contribuir com um projeto. Se as políticas da sua empresa permitirem a criação de forks privados e repositórios internos, você poderá criar forks de um repositório para sua conta pessoal ou para qualquer organização em que tenha permissões de criação de repositórios. Para obter mais informações, confira "Funções em uma organização".
Próximas etapas
Você já bifurcou um repositório, treinou clonar sua bifurcação e configurou um repositório upstream.
-
Para obter mais informações sobre como clonar a bifurcação e sincronizar as alterações em um repositório bifurcado usando o seu computador, confira "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. A criação de um repositório para seu projeto permite que você armazene código no GitHub. Isso fornece um backup do seu trabalho que você pode optar por compartilhar com outros desenvolvedores. Para obter mais informações, confira "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 AE. Para obter mais informações, confira "Seja social".
-
O GitHub tem uma ótima comunidade de suporte na qual você pode pedir ajuda e conversar com pessoas de todo o mundo. Participe da conversa na GitHub Community.