Como renomear uma ramificação no Git
Publicados: 2022-12-26A 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.
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.
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
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
Você pode ver as ramificações no repositório remoto incluindo a opção -r (remoto).
git ramo -r
Para ver ramificações locais e remotas com um comando, use a opção -a
(todos).
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
Verificamos a ramificação “feature19” e a renomeamos como “feature18”. Vamos ver como nossos ramos se parecem agora.
ramo git
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
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
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
Precisamos excluir “feature19” do repositório remoto e enviar “feature18” para o remoto.
git push origin --delete feature19
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
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
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