VS Code 中的 Git 分支与工作树
Git 分支使您能够同时处理不同的功能或实验,而不会影响主代码库。VS Code 提供了用于分支管理、并行开发的 Git 工作树以及用于临时更改的暂存管理工具。
本文介绍了如何在 VS Code 中使用分支、工作树和暂存来管理并行开发工作。
使用分支
分支是 Git 历史记录中指向特定提交的轻量级、可移动指针。它们允许您从主开发线分离出来,并独立处理功能。
例如,假设您正在开发一个 Web 应用程序,需要添加用户身份验证,同时还要修复支付系统中的一个 Bug。您可以创建两个分支:
feature/user-authentication- 包含您的登录和注册功能bugfix/payment-validation- 包含支付处理错误的修复程序
每个分支都维护自己的一组更改,互不影响。您可以在分支之间切换以处理不同的任务,稍后再将已完成的分支合并回主分支。
查看当前分支
当前分支显示在 VS Code 的多个位置:
- 状态栏:显示当前分支名称并允许快速切换分支
- 源代码管理视图:在存储库标题中显示当前分支
- 源代码管理图:直观地展示分支关系和历史记录

切换分支
在 Git 术语中,切换到另一个分支称为“检出”(checkout)。当您检出分支时,Git 会更新您的工作目录以匹配该分支的状态。
要切换到另一个分支:
-
在状态栏中选择分支名称,或从命令面板(⇧⌘P(Windows、Linux Ctrl+Shift+P))运行 Git: Checkout to 命令。
-
从可用分支列表中选择
- 本地分支:存在于本地计算机上的分支
- 远程分支:您可以本地检出的远程存储库中的分支
- 最近分支:最近使用的分支
如果您在切换分支时有未提交的更改,Git 可能会阻止切换以避免丢失工作。请考虑在切换前提交更改或使用 stash(暂存)。
创建新分支
创建一个新分支以开始处理某项功能或实验
-
在状态栏中选择分支名称,或从命令面板运行 Git: Create Branch。
-
输入新分支的名称。请使用描述性名称,例如
feature/user-authentication或bugfix/login-error。提示VS Code 可以为您生成随机分支名称。通过 git.branchRandomName.enable 和 git.branchRandomName.dictionary 设置进行配置。
-
选择源分支(通常是
main或develop)以创建新分支。

创建完成后,VS Code 会切换到新分支。
如果您使用 GitHub Pull Requests and Issues 扩展,您可以直接从 GitHub 问题创建分支,这将带您进入一个新的本地分支开始工作,并自动为您预填拉取请求(Pull Request)。
重命名和删除分支
重命名当前分支:
- 从命令面板运行 Git: Rename Branch,或从更多操作 (...) 菜单中选择它。
- 输入新分支名称。
删除分支:
- 切换到另一个分支(不能删除当前活动的分支)。
- 从命令面板运行 Git: Delete Branch,或从更多操作 (...) 菜单中选择它。
- 从列表中选择要删除的分支。
您也可以通过使用对应的 Delete Remote Branch 操作删除远程分支。
删除分支会将其从本地存储库中永久移除。请确保该分支已合并,或者您不再需要其中的更改。
合并和发布分支
功能完成后,将其合并回主分支:
- 切换到目标分支(通常是
main或develop)。 - 从命令面板运行 Git: Merge Branch。
- 选择要合并的分支。
要将分支发布到远程存储库,请使用 Publish Branch 操作。
VS Code 会在“源代码管理”视图中显示合并结果。如果有冲突,VS Code 会突出显示它们并提供解决工具。了解更多关于解决合并冲突的信息。
使用 Git 工作树
VS Code 内置了对 Git 工作树 (Worktrees) 的支持,使您可以轻松地同时管理和处理多个分支。
理解工作树
工作树是 Git 分支在独立目录中的单独检出。这允许您为同一个存储库拥有多个工作目录,每个目录位于不同的分支上。工作树功能特别适用于:
- 在单独的文件夹中同时处理多个功能
- 并排运行应用程序的不同版本
- 比较各分支之间的实现
创建工作树
在 VS Code 中创建新工作树:
-
从“源代码管理”视图中打开 源代码管理存储库 视图。

-
选择您的存储库,打开 更多操作 (...) 菜单,然后选择 Worktrees > Create Worktree。

-
按照提示选择新工作树的分支和位置。
VS Code 会在指定位置为工作树创建一个新文件夹,并将所选分支检出到该文件夹中。
新工作树将作为单独的条目出现在 源代码管理存储库 视图中。
在工作树之间切换
VS Code 可以同时显示多个存储库(包括工作树):
- 每个工作树在 源代码管理存储库 视图中显示为单独的存储库
- 您可以打开多个 VS Code 窗口,每个窗口指向不同的工作树
- 使用 文件 > 打开最近 快速在工作树目录之间切换
打开工作树
有多种方法可以打开工作树:
-
在 VS Code 中直接打开与工作树关联的文件夹。VS Code 会自动检测到它是现有存储库的工作树。
-
右键单击“源代码管理存储库”视图中的工作树,选择 Open Worktree in New Window 或 Open Worktree in Current Window。
-
在命令面板中运行 Git: Open Worktree in Current Window 或 Git: Open Worktree in New Window 命令,并选择所需的工作树。
从工作树比较和迁移更改
当您在工作树中进行更改时,可以将这些更改与主工作区进行比较,并将工作树中的更改合并回主存储库。
-
在“源代码管理”视图中,右键单击工作树中已更改的文件,选择 Compare with Workspace 以并排查看差异。

-
查看后,使用命令面板中的 Migrate Worktree Changes 命令将工作树中的所有更改合并到当前工作区。