如何在 Git 中重命名分支

已发表: 2022-12-26

蓝色背景上的 Git 徽标

要重命名当前的本地分支,请使用“git branch -m new-name”。 要从另一个内部重命名本地分支,请使用“git branch -m old-name new-name”。 要重命名远程分支,请使用“git push origin --delete old-name”删除它,然后使用“git push origin -u new-name”推送重命名的本地分支。

分支是 Git 中的一项微不足道的练习。 不幸的是,琐碎的任务很少得到应有的重视,并且会发生错误。 如果您错误地命名了一个分支,则必须对其进行重命名。 以下是如何做到这一点。

目录

为什么分支名称在 Git 中很重要
在重命名之前列出 Git 中的分支
如何在 Git 中重命名本地分支
如何在 Git 中重命名远程分支
重命名分支很简单

为什么分支名称在 Git 中很重要

与经典版本控制系统 (VCS) 中的分支有关的任何事情都是一件大事。 它需要对正在添加或合并分支的协调一致的理解,并且所有使用该存储库的人都必须确保他们没有做任何事情——或者忘记做某事——以便操作继续并取得成功。

涉及分支机构的操作通常也非常缓慢。 使用分支有一个时间惩罚。 Git 从一开始就被设计成不同的。 因为它是一个分布式版本控制系统,所以每个用户在他们的本地机器上都有一个完整存储库的副本。

Git rebase:你需要知道的一切
相关Git rebase:你需要知道的一切

除非您将分支推送到远程存储库,否则在本地计算机上创建分支不会影响任何其他人。 在 Git 中,分支操作被设计为既易于使用又能快速完成。 Git 中的分支在计算方面非常便宜。 这是本地存储库中的一个微不足道的操作。

事实上,鼓励开发人员进行分支,并且经常进行分支。 分支只是您从中受益的 VCS 中的另一个工具。 分支在 Git 中并不是什么可怕的东西,它们是它最常用的功能之一。

但熟悉会导致蔑视。 或者,至少,对分支机构的随意关注。 在 Git 中创建分支可能快速而简单,但您在创建分支时仍然需要集中注意力。 很容易输入错误的分支名称,或者键入错误的名称,从而导致分支名称错误。

如果分支要在某个时候被推送到远程存储库,则需要正确拼写。 如果不是,当其他人尝试使用它时会造成混淆。

相关: Git 分支如何工作?

在重命名之前列出 Git 中的分支

检查当前分支名称是什么是很好的第一步。 git branch命令为我们列出分支。 您可以使用此命令查看本地存储库中的分支:

 分支

使用 git branch 命令列出本地分支

分支机构已为我们列出。 当前分支以绿色突出显示并带有星号。

要查看分支及其提交,您可以使用show-branch命令。

 git 显示分支

使用 git show-branch 命令列出分支及其提交

您可以通过包含 -r(远程)选项来查看远程存储库上的分支。

 git 分支 -r 

使用 git branch -r 命令列出远程分支

要使用一个命令查看本地和远程分支,请使用-a (全部)选项。

 git 分支 -a 

使用 git branch -a 命令列出本地和远程分支

我们的本地分支机构比远程分支机构多。 分支“feature16”还没有被推送到远程仓库。 这只是正常操作的一个方面,不是问题。

我们的问题是分支“feature19”应该被命名为“feature18”。 这就是我们要纠正的错误。

相关:如何更新和维护单独的 Git 分支

如何在 Git 中重命名本地分支

您可以通过两种方式在本地重命名分支。 您可以签出该分支并重命名它,或者您可以在其他分支中工作时重命名该分支。

要重命名当前分支,请确保您已签出并正在使用要重命名的分支。 然后使用带有-m (移动)选项的git branch命令。

 git 结帐功能 19
 git 分支 -m feature18 

检查分支“feature19”并重命名

我们检查了“feature19”分支并将其重命名为“feature18”。 让我们看看我们的分支现在是什么样子。

 分支

列出分支以检查分支“feature19”是否已重命名为“feature18”

我们的分支现在在本地存储库中具有正确的名称。

如果你愿意,你可以在另一个分支工作时重命名一个分支。 这是我们在“master”分支中工作的示例。

 分支

列出分支以检查我们在主分支上

我们使用的命令与之前的命令相同,但我们需要提供我们正在重命名的分支的当前名称,以及我们希望它拥有的新名称。

 git branch -m feature19 feature18
 分支

从另一个分支中重命名一个分支

同样,我们本地存储库中的分支已使用正确的名称重命名。

相关:如何在 GitHub 中创建一个新分支

如何在 Git 中重命名远程分支

远程存储库仍然保留具有旧名称的分支。 要重命名远程分支,我们删除旧分支并推送新分支。

如果其他用户使用此分支并向其推送提交,则您应该在本地重命名之前进行拉取。 这可确保您的本地存储库是最新的,并且不会丢失其他用户所做的更改。 在本地重命名分支之前将他们的更改拉回您的存储库,这意味着当您将其推回远程存储库时,这些更改将位于新分支中。

让我们来看看我们的分支机构的状态。 我们将使用-a (全部)选项来查看本地和远程分支。

 git 分支 -a 

使用 git branch -a 命令列出本地和远程分支

我们需要从远程存储库中删除“feature19”,并将“feature18”推送到远程。

 git push origin --delete feature19 

使用 git 的 --delete 选项删除远程分支

系统将提示您输入远程存储库的密码。 删除完成后,您会看到一条确认消息。

现在我们将新分支推送到远程,并使用 -u(设置上游)选项

git push origin -u feature18 

将分支推送到远程存储库

同样,系统将提示您输入遥控器的密码。 新分支被推送到远程,我们被告知分支“feature18”已设置为跟踪分支本地副本中的更改。

让我们再次检查我们的本地和远程分支机构处于什么状态。

 git 分支 -a 

使用 git branch -a 命令列出本地和远程分支

我们的分支在本地和远程都成功改名了,远程分支正在跟踪我们本地分支的变化。

相关:如何删除本地和远程存储库上的 Git 分支

重命名分支很简单

使用 Git,重命名分支很简单。 如果您是唯一使用需要重命名的存储库或分支的人,那将非常简单。

如果其他人共享该分支,请确保您与他们沟通您将重命名该分支,并且他们应该推送任何未提交的工作。 当他们推送后,您可以拉取分支,然后在本地和远程重命名您的分支。

相关:如何将 git 与多个远程存储库一起使用