0


Git 切换(Switch)分支

概述

当您处理任何具有多个功能的大型项目时,可能会出现这样的情况:您可能在存储库中维护许多分支,并且可能需要在不同的分支上工作以并行执行不同的任务。因此,在存储库中从一个分支转到另一个分支的操作称为分支切换。这种分支切换操作在 git 中也称为检出。在本文中,我们将看到如何在 git 中使用 git switch branch 命令切换到另一个分支,并使用 git 轻松高效地开始开发另一个功能。

先决条件

在了解什么是分支切换以及如何在 git 中的不同分支之间切换之前,我们将了解 git 中的分支到底是什么,以及在存储库中拥有不同分支的需求是什么。

因此,分支是 git 中的一个概念,它允许您偏离主分支并继续以隔离的方式工作,而不会弄乱主分支。在 git 中,每个分支都是任何存储库的一个版本,或者您可以将其称为独立的开发线,任何存储库都可以有尽可能多的分支,每个分支都有不同版本的存储库。

分支在许多方面都很有用,首先,您可以以隔离的方式处理任何特定功能,而不会干扰主分支上的工作,这样也可以促进错误修复的开发,并且错误会更少,因为维护一部分工作比让大型分支拥有所有代码更容易。

分支还有助于维护代码库的稳定性。要在 git 中创建分支,我们可以使用以下命令:

git branch <new_branch_name>

当您想要开发新功能时,可以使用命令 git branch new_branch_name 创建一个与主分支不同的新分支。

如果要显示存储库中的分支总数,可以使用以下命令:

git branch

上面的命令将显示存储库中的所有本地分支,以及当前所在分支名称前面标记的 * 符号。现在,在接下来的章节中,您将看到如何在 git 上切换分支。

如何在 Git 上切换分支?

随着项目中功能的增加,存储库中具有更多分支的需求也随之增加,以便并行处理许多功能。因此,在存储库中的不同分支之间切换和切换称为分支切换或分支签出,主要有两种方法:使用 git checkout 方法和使用 git switch 分支方法。在接下来的章节中,我们将详细介绍使用这两种方法的语法和示例。

1.使用 git checkout 命令

这是在 git 存储库中切换分支的最简单和最常见的方法之一。在此方法中,您可以使用“git checkout”命令并指定要从当前分支切换的目标分支的名称。若要查看当前分支,可以运行以下命令:

git branch

正如我们上面所讨论的,此命令将列出存储库中的所有分支,以及标记在当前分支前面的 * 符号。

要使用“git checkout 分支”,语法为:

git checkout <name_of_the_destination_branch>

此处,name_of_the_destination_branch 是要切换的目标分支的名称。

现在,考虑一下目标分支目前不存在的情况,并且您想创建一个新分支并立即切换到它,那么您可以使用这个 checkout 命令,但有一个小小的变化:

git checkout -b <name_of_the_branch>

在这里,name_of_the_branch 是要创建的目标分支的名称。

您还可以使用 git branch 命令检查您是否已成功切换到目标分支,并且 * 现在应该标记在我们刚刚切换的目标分支前面。

现在,让我们看看如何使用这个 git checkout 方法切换分支的示例。我们有一个测试文件夹,存储库中有 5 个分支,目前,我们在 master 分支上,如下图所示。

现在要切换到 demobranch,您可以使用以下命令:

git checkout demobranch

从上图中,您还可以看到消息“已切换到分支'demobranch'”,您还可以使用 git branch 命令进行验证。

正如你现在看到的,*符号被标记在demobranch上,这意味着我们已经成功切换到demo分支。

现在,考虑您要创建另一个名为 demobranch2 的分支,然后立即切换到该分支的情况,因此有两种方法可以做到这一点,我们上面讨论的一种方法使用相同的 git checkout 命令和 -b 标志。

我们可以看到消息 “switched to a new branch 'demonbranch2'”,我们可以通过以下方式验证这一点:

我们可以看到第 6 个分支 demobranch2 在我们的本地存储库中创建,并且我们已经切换到它。做同样事情的另一种方法是将其分解为两个步骤:首先,使用 git branch <new_branch_name> 命令创建一个新分支,然后使用 git checkout <new_branch_name>切换到新创建的分支。

我们还可以看到这样的例子:

从上图中可以看出,我们在存储库中创建了一个名为 testing_branch 的新分支,但我们仍在 demobranch2 上,因此要切换到测试分支,您可以使用简单的 git checkout 命令。

正如我们所看到的,现在我们正处于testing_branch。

2.使用 git switch 命令

在 git 上的分支之间切换的另一种快速方法是使用 git switch 命令并指定要切换到的分支的目标名称。

要使用 git switch 方法,语法为:

git switch <name_of_the_destination_branch>

此处,name_of_the_destination_branch 是要切换的目标分支的名称。

现在,考虑与我们上面讨论的相同的情况,即目标分支目前不存在,并且您想要创建一个新分支并立即切换到它,您可以将此 switch 命令与附加标志一起使用:

git switch -c <name_of_the_branch>

在这里,name_of_the_branch 是要创建并从当前分支切换的目标分支的名称,-c 是使用的标志。

现在,让我们看看如何使用这个 git switch 方法切换分支的示例。我们有相同的测试文件夹,现在存储库中有 7 个分支,目前,我们在 master 分支上。

现在要切换到 demobranch,我们可以使用以下命令:

git switch demobranch

从上图中,您还可以看到消息“已切换到分支'demobranch'”,您还可以使用 git branch 命令进行验证。

正如你现在所看到的,*符号被标记在demobranch的前面,这意味着我们已经成功切换到demo分支。

现在,考虑我们上面讨论的相同情况,您要创建另一个名为 testing_branch_2 的分支,然后立即切换到该分支,使用相同的 git switch 命令和 -c 标志。

我们可以看到消息“切换到新分支'testing_branch_2'”,我们可以通过以下方式进行验证:

您可以看到在我们的本地存储库中创建了第 8 个分支testing_branch_2并且我们已经成功切换到它。

切换到远程分支

到目前为止,我们一直在研究如何在存储库中的本地分支之间切换,但也可能有一种情况,您可能有兴趣从存储库切换到远程分支。

因此,要检出远程分支,您应该确保使用 git fetch 命令获取您的远程分支。

git fetch

然后,您可以使用普通的 git checkout 命令以及 -t 选项和要切换的分支的名称切换到获取的远程分支。

git checkout -t <*remote_name>/<name_of_branch>*

-t 标志代表“track”,它用于创建分支并自动将上游分支设置为远程分支。

假设您在远程上有一个名为 remote-branch 的分支,源是远程名称。

因此,要签出到远程分支,您需要执行 checkout 命令以及 -t 标志和远程分支的名称。

git checkout -t origin/*remote-branch*

输出如下图所示:

结论

  • 分支是 git 中的一个概念,它允许您偏离主分支并继续以隔离的方式工作,而不会弄乱主分支。
  • 每个分支都是任何存储库的一个版本,或者您可以将其称为独立的开发线,任何存储库都可以有尽可能多的分支,每个分支都有不同版本的存储库。
  • 在存储库中从一个分支转到另一个分支的操作称为分支切换。此操作在 Git 中也称为“签出”。
  • git branch <new_branch_name> 命令用于在本地存储库中创建新分支。
  • git branch 命令用于列出存储库中的所有分支,以及当前分支前面标记的 * 符号。
  • git checkout <name_of_the_destination_branch> 命令用于检出或切换到目标分支。
  • git checkout -b <name_of_the_branch> 当目标分支不存在并且您想创建一个新分支并立即切换到它时使用,那么您可以使用此 checkout 命令。
  • git switch <name_of_the_destination_branch> 命令类似于 git checkout 命令,用于切换到目标分支。
  • git switch -c <name_of_the_branch> 命令的工作方式与我们在 git checkout 命令中讨论的类似,以及 git switch branch 命令的 -b 标志。它用于立即创建一个新分支并切换到它。
  • 要切换到远程分支,您需要首先使用 git fetch 命令获取远程分支。
  • 获取分支后,可以使用 git checkout -t <remote_name>/<name_of_branch> 命令切换到它。它将跟踪并创建您的分支,然后自动将上游分支设置为远程分支。
标签: git

本文转载自: https://blog.csdn.net/mzgxinhua/article/details/135095618
版权归原作者 新华 所有, 如有侵权,请联系我们删除。

“Git 切换(Switch)分支”的评论:

还没有评论