Skip to main content

Renomear um branch

É possível alterar o nome de um branch em um repositório.

Quem pode usar esse recurso?

People with write permissions to a repository can rename a branch in the repository unless it is the default branch or covered by a branch protection or ruleset. People with admin permissions can rename the default branch and protected branches.

Sobre a renomeação de branches

Você pode renomear um branch em um repositório em GitHub.com. Para obter mais informações sobre ramificações, consulte Sobre ramificações.

Ao renomear uma ramificação, todas as URLs que contiverem o nome antigo da ramificação serão automaticamente redirecionadas para a URL equivalente da ramificação renomeada. Atualizam-se também as políticas de proteção de branch também, bem como o branch base para pull requests abertos (incluindo aqueles para bifurcações) e rascunhos de versões. Se o branch renomeado for o branch head de uma solicitação de pull aberta, essa solicitação de pull será fechada.

Se o branch padrão de um repositório for renomeado, GitHub fornecerá instruções na página inicial do repositório orientando os colaboradores a atualizar seus ambientes Git locais.

Embora as URLs do arquivo sejam automaticamente redirecionadas, as URLs do arquivo não processado não são redirecionadas. Além disso, GitHub não executará redirecionamentos se os usuários realizarem um git pull para o nome de branch anterior.

          GitHub Actions os fluxos de trabalho não acompanham renomeações, portanto, se o repositório publicar uma ação, qualquer pessoa que usar essa ação com `@{old-branch-name}` terá problemas. Você deve considerar adicionar um novo branch com o conteúdo original e um commit adicional relatando que o nome do branch é encerrando e sugerindo que os usuários migrem para o novo nome de branch.

Quem pode renomear um ramo

A maioria dos branches pode ser renomeada por qualquer usuário com permissão de escrita no repositório.

Algumas ramificações só podem ser renomeadas por um administrador de repositório: a ramificação padrão do repositório e qualquer ramificação coberta por uma proteção de ramificação ou por um conjunto de regras de ramificação no nível do repositório.

Quando os conjuntos de regras de nível organizacional ou de nível empresarial são direcionados a ramificações em um repositório, renomear essas ramificações normalmente requer um administrador da organização ou da empresa.

No entanto, os proprietários de organizações e empresas podem permitir que os administradores do repositório renomeiem ramificações cobertas por esses conjuntos de regras, desde que o novo nome da ramificação ainda esteja sujeito a todas as mesmas regras que o nome atual. A alteração do branch padrão ainda requer um administrador de organização ou de empresa quando conjuntos de regras estão em vigor.

Para obter mais informações, consulte Permitindo que administradores de repositório renomeiem branches com conjuntos de regras da organização e Aplicar as políticas de gerenciamento do repositório na sua empresa.

Os administradores de repositório podem criar e excluir ramificações, desde que tenham as permissões apropriadas.

Renomear um branch

  1. Em GitHub, acesse a página principal do repositório.

  2. Na exibição da árvore de arquivos à esquerda, selecione o menu suspenso do branch e clique em View all branches. Você também pode encontrar o menu suspenso do branch na parte superior do editor de arquivos integrado.

    Captura de tela do modo de exibição de árvore de arquivos de um repositório. Há um menu suspenso para branches expandido e realçado em laranja escuro.

  3. Ao lado do branch que você deseja renomear, selecione o menu drop-down, então clique em Renomear branch.

  4. Digite um novo nome para o ramo.

  5. Revise as informações sobre ambientes locais e clique em Renomear branch.

Atualizar um clone local após alterações de nome do branch

Depois de renomear um branch em um repositório no GitHub, qualquer colaborador com um clone local do repositório precisará atualizar o clone.

A partir do clone local do repositório em um computador, execute os seguintes comandos para atualizar o nome do ramo padrão.

git branch -m OLD-BRANCH-NAME NEW-BRANCH-NAME
git fetch origin
git branch -u origin/NEW-BRANCH-NAME NEW-BRANCH-NAME
git remote set-head origin -a

Opcionalmente, execute o comando a seguir para remover as referências de rastreamento para o nome do branch antigo.

git remote prune origin