Como renomear uma ramificação no Git

Publicados: 2022-12-26

Git logotipo em um fundo azul

Para renomear a ramificação local atual, use "git branch -m new-name". Para renomear um branch local de dentro de outro, use "git branch -m old-name new-name". Para renomear uma ramificação remota, exclua-a com "git push origin --delete old-name" e, em seguida, envie a ramificação local renomeada com "git push origin -u new-name".

A ramificação é um exercício trivial no Git. Infelizmente, tarefas triviais raramente recebem a devida atenção e erros acontecem. Se você nomeou uma ramificação incorretamente, ela terá que ser renomeada. Veja como fazer isso.

Índice

Por que os nomes das ramificações são importantes no Git
Listar branches no Git antes de renomeá-los
Como renomear uma ramificação local no Git
Como renomear uma ramificação remota no Git
Renomear branches é simples

Por que os nomes das ramificações são importantes no Git

Qualquer coisa a ver com ramificações em sistemas clássicos de controle de versão (VCSs) era importante. Isso exigia um entendimento coordenado de que uma ramificação estava sendo adicionada ou mesclada, e todas as pessoas que usavam esse repositório tinham que garantir que não fizessem nada — ou se esquecessem de fazer algo — para que a operação continuasse e fosse bem-sucedida.

As operações envolvendo filiais também costumavam ser muito lentas. Houve uma penalidade de tempo no topo usando galhos. O Git foi projetado desde o início para ser diferente. Por ser um sistema de controle de versão distribuído, todo usuário tem uma cópia do repositório completo em sua máquina local.

Git rebase: tudo o que você precisa saber
Rebase do Git RELACIONADO : Tudo o que você precisa saber

A ramificação em sua máquina local não afeta mais ninguém, a menos que você envie a ramificação para um repositório remoto. E no Git, as operações de ramificação são projetadas para serem tão fáceis de usar quanto rápidas de serem concluídas. A ramificação no Git é muito barata em termos computacionais. É uma ação trivial dentro do repositório local.

Na verdade, os desenvolvedores são incentivados a ramificar e ramificar com frequência. As ramificações são apenas mais uma ferramenta dentro do seu VCS da qual você se beneficia. Branches não são grandes coisas assustadoras no Git, eles são um de seus recursos mais usados.

Mas a familiaridade pode levar ao desprezo. Ou, pelo menos, a uma consideração casual por ramos. A ramificação pode ser rápida e simples no Git, mas você ainda precisa se concentrar ao criar uma ramificação. É fácil digitar incorretamente o nome de um branch ou digitar o nome errado, resultando em um branch mal nomeado.

Se a ramificação for enviada para o repositório remoto em algum momento, ela precisará ser digitada corretamente. Se não for, causará confusão quando outras pessoas tentarem usá-lo.

RELACIONADO: Como funcionam as ramificações do Git?

Listar branches no Git antes de renomeá-los

Verificar quais são os nomes das ramificações atuais é um bom primeiro passo. O comando git branch lista as ramificações para nós. Você pode ver as ramificações no repositório local com este comando:

 ramo git 

Listando ramificações locais usando o comando git branch

Os ramos são listados para nós. A ramificação atual é destacada em verde e com um asterisco.

Para ver os branches e seus commits, você pode usar o comando show-branch .

 git show-branch 

Listando branches e seus commits com o comando git show-branch

Você pode ver as ramificações no repositório remoto incluindo a opção -r (remoto).

 git ramo -r 

Listando ramificações remotas com o comando git branch -r

Para ver ramificações locais e remotas com um comando, use a opção -a (todos).

 git branch -a 

Listando ramificações locais e remotas com o comando git branch -a

Temos mais filiais locais do que remotas. A ramificação “feature16” ainda não foi enviada para o repositório remoto. Isso é apenas um aspecto da operação normal, não um problema.

Nosso problema é que a ramificação “feature19” deveria ter sido nomeada como “feature18”. Então esse é o erro que vamos corrigir.

RELACIONADO: Como atualizar e manter ramificações separadas do Git

Como renomear uma ramificação local no Git

Há duas maneiras de renomear uma ramificação localmente. Você pode fazer check-out da ramificação e renomeá-la, ou pode renomear a ramificação enquanto estiver trabalhando em outra ramificação.

Para renomear o branch atual , certifique-se de que você fez check-out e está usando o branch que deseja renomear. Em seguida, use o comando git branch com a opção -m (mover).

 git checkout feature19
 git branch -m feature18 

Verificando a ramificação "feature19" e renomeando-a

Verificamos a ramificação “feature19” e a renomeamos como “feature18”. Vamos ver como nossos ramos se parecem agora.

 ramo git 

Listando ramificações para verificar se a ramificação "feature19" foi renomeada para "feature18"

Nossa ramificação agora tem o nome correto no repositório local.

Se desejar, você pode renomear uma ramificação quando estiver trabalhando em outra ramificação. Aqui está um exemplo onde estamos trabalhando na ramificação “mestre”.

 ramo git 

Listando branches para verificar se estamos no branch master

O comando que usamos é o mesmo comando de antes, mas precisamos fornecer o nome atual para o ramo que estamos renomeando, bem como o novo nome que queremos que ele tenha.

 git branch -m feature19 feature18
 ramo git 

Renomeando um branch de dentro de outro branch

Novamente, a ramificação em nosso repositório local foi renomeada com o nome correto.

RELACIONADO: Como criar uma nova ramificação no GitHub

Como renomear uma ramificação remota no Git

O repositório remoto ainda mantém a ramificação com o nome antigo. Para renomear uma ramificação remota, excluímos a ramificação antiga e enviamos a nova ramificação.

Se outros usuários usarem esta ramificação e enviarem commits para ela, você deve fazer um pull antes de renomeá-la localmente. Isso garante que seu repositório local esteja atualizado e que as alterações feitas por outros usuários não sejam perdidas. Puxar as alterações de volta para o seu repositório antes de renomear o branch localmente significa que essas alterações estarão no novo branch quando você o enviar de volta para o repositório remoto.

Vamos dar uma olhada no estado de nossas filiais. Usaremos a opção -a (all) para ver as ramificações locais e remotas.

 git branch -a 

Listando ramificações locais e remotas com o comando git branch -a

Precisamos excluir “feature19” do repositório remoto e enviar “feature18” para o remoto.

 git push origin --delete feature19 

Excluindo uma ramificação remota usando a opção git the --delete

Você será solicitado a fornecer a senha para o repositório remoto. Após a exclusão, você verá uma mensagem de confirmação.

Agora, enviaremos nossa nova ramificação para o controle remoto e usaremos a opção -u (configurar upstream)

 git push origem -u feature18 

Enviando uma ramificação para o repositório remoto

Novamente, você será solicitado a fornecer sua senha para o controle remoto. A nova ramificação é enviada para o controle remoto e somos informados de que a ramificação “feature18” está configurada para rastrear alterações em nossa cópia local da ramificação.

Vamos verificar mais uma vez em que estado estão nossas filiais locais e remotas.

 git branch -a 

Listando ramificações locais e remotas com o comando git branch -a

Nossa filial foi renomeada com sucesso local e remotamente, e a filial remota está acompanhando as alterações em nossa filial local.

RELACIONADO: Como excluir ramificações do Git em repositórios locais e remotos

Renomear branches é simples

Com o Git, renomear branches é simples. Se você é a única pessoa que usa um repositório ou branch que precisa ser renomeado, é muito simples.

Se outras pessoas compartilharem o branch, certifique-se de comunicá-los que você irá renomear o branch e que eles devem enviar qualquer trabalho não confirmado. Quando eles enviarem, você pode puxar a ramificação e, em seguida, renomear sua ramificação local e remotamente.

RELACIONADO: Como usar o git com vários repositórios remotos