现已发布!阅读有关 11 月的新功能和修复的信息。

Visual Studio Code 中 Git 简介

想要轻松管理您的源代码并与他人协作?Git 和 GitHub 是您需要的工具!借助 Visual Studio Code,您可以快速设置和使用它们。即使您是初学者,VS Code 的用户友好界面也会指导您完成常见的 Git 操作,例如推送和拉取代码、创建和合并分支以及提交代码更改。如果您是专业人士,您会喜欢在编辑器中直接执行 Git 操作的功能,与使用 Git 命令行相比,可以节省时间和精力。此外,VS Code 和 Git 之间的无缝工作流程意味着您可以留在编辑器中并完成更多工作。

在 VS Code 中设置 Git

要在 VS Code 中使用 Git 和 GitHub,首先请确保您在您的计算机上安装了 Git。如果 Git 丢失,源代码管理视图会显示有关如何安装它的说明。之后请确保重新启动 VS Code。

此外,您可以使用 Activity Bar 右下角的帐户菜单登录 VS Code 和您的 GitHub 帐户,以启用其他功能,例如设置同步,还可以从 GitHub 克隆和发布存储库。

Screenshot of the Accounts menu in VS Code

打开 Git 仓库

VS Code 提供了多种在 Git 存储库中入门的方法,从本地到远程云驱动环境(如 GitHub Codespaces)。

在本地克隆存储库

要克隆存储库,请在命令面板中运行 Git: Clone 命令 (⇧⌘P (Windows,Linux Ctrl+Shift+P)),或者在源代码管理视图中选择克隆存储库按钮。

如果您从 GitHub 克隆,VS Code 会提示您使用 GitHub 进行身份验证。然后,从列表中选择要克隆到您计算机的存储库。该列表包含公共和私有存储库。

Screenshot of the Clone Repository quick prompt, searching for repositories with the name vscode

对于其他 Git 提供商,请输入存储库 URL,选择克隆,然后在您的本地计算机上选择一个文件夹以将文件克隆到其中。将存储库克隆到本地计算机后,VS Code 会打开该文件夹。

Screenshot of the Clone Repository quick prompt, searching for a repository by providing the repository URL

在本地文件夹中初始化存储库

要初始化新的本地 Git 存储库

  1. 在您的计算机上选择现有文件夹或新文件夹,并在 VS Code 中打开它。

  2. 源代码管理视图中,选择初始化存储库按钮。

    这将在当前文件夹中创建一个新的 Git 存储库,允许您开始跟踪代码更改。

    此操作等效于在命令行上运行 git init

    Source Control view for a workspace not under Git source control will offer to Initialize a Git repo or Publish to GitHub

将本地存储库发布到 GitHub

您还可以初始化本地存储库并将其直接发布到 GitHub。这会在您的 GitHub 帐户上创建一个新存储库,并将您的本地代码更改推送到远程存储库。将您的源代码放在远程存储库中是备份代码、与他人协作以及使用 GitHub Actions 自动化工作流程的好方法。

使用源代码管理视图中的发布到 GitHub 命令按钮。然后,您可以选择存储库的名称和描述,以及是否将其设为公开或私有。

Screenshot of the Publish to GitHub quick prompt, showing private and public GitHub repository names

创建存储库后,VS Code 会将您的本地代码推送到远程存储库。您的代码现在已备份在 GitHub 上,您可以开始通过提交和拉取请求与他人协作。

在 codespace 中打开 GitHub 存储库

GitHub Codespaces 允许您在完全配置的基于云的开发环境中打开 GitHub 存储库,使您能够在浏览器中进行开发,而无需在本地计算机上安装任何软件。GitHub Codespaces 允许个人免费使用,这使得开始处理开源项目变得很容易。

要为您的 GitHub 存储库创建 codespace

  1. 在 VS Code 中安装 GitHub Codespaces 扩展,并使用您的 GitHub 帐户登录。

  2. 运行 Codespaces:创建新的 Codespace 命令。

  3. 选择要打开的存储库和分支。

    VS Code 将打开一个新窗口,该窗口已连接到 codespace。源代码、终端以及运行和调试都托管在远程基于云的开发环境中。

    请注意,文件资源管理器和状态栏指示工作区在 codespace 中打开。

    Screenshot of a workspace opened in a codespace, highlighting the codespace name in the File Explorer and Status Bar

或者,您也可以从 GitHub Codespaces 网站上的 codespace 模板开始。

如果您已经在浏览器中打开了 codespace,请在浏览器中运行 Codespaces:在 VS Code 桌面版中打开 命令,以从本地 VS Code 桌面版连接到 codespace。

您可以在在 codespace 中开发文档中了解有关 GitHub Codespaces 的更多信息,包括转发端口等自定义信息。

远程打开 GitHub 存储库

VS Code 的远程存储库支持允许您浏览和编辑 GitHub 存储库,而无需将其克隆到本地计算机。这对于快速更改远程存储库而无需将整个代码库克隆到您的计算机非常有用。

  1. 首先安装 GitHub Repositories 扩展。

  2. 运行命令远程仓库: 打开远程仓库...,或使用资源管理器视图中的打开远程仓库按钮。

  3. 搜索并选择您要打开的 GitHub 仓库。

    Remote Repositories opening a remote GitHub repo, pull request or Azure repo

提示: 如果您需要执行代码或运行终端命令,可以使用 继续在...上工作 命令无缝地从远程仓库切换到 Codespace。

暂存和提交代码更改

一旦您设置好 Git 仓库,您可以通过暂存和提交您新创建和编辑的代码来开始跟踪代码更改。

提示:尽早并经常提交您的更改。 这使得在需要时更容易回滚到代码的先前版本。

您可以从活动栏访问源代码管理视图,以列出工作区中所有已更改的文件。 您可以使用源代码管理视图标题中的树形/列表图标在树形视图或列表视图之间切换。

Source Control view, highlighting the tree/list view control in the header

当您在源代码管理视图中选择一个文件时,编辑器会显示一个差异视图,突出显示与先前提交的文件相比的文件更改。

Source Control view with one file staged and other changes, a diff showing in the editor that highlights the changes

要暂存一个文件,请选择 源代码管理 视图中文件旁边的 + (加号) 图标。 这会将文件添加到 暂存的更改 部分,表示它将包含在下一次提交中。

Source Control view with four changed files, highlighting the '+' button to stage the changes of a file

您还可以通过选择源代码管理视图中 更改 旁边的 + (加号) 图标来一次暂存所有待处理的更改。

也可以通过选择文件旁边的 (减号) 图标来放弃暂存的更改。 同样,您可以通过选择源代码管理视图中 暂存的更改 旁边的 (减号) 图标来放弃所有暂存的更改。

Source Control view with four changed files, highlighting the '-' button to unstage the changes of a file

要提交您暂存的更改,请在上方的文本框中键入提交消息,然后选择 提交 按钮。 这会将您的更改保存到本地 Git 仓库,允许您在需要时回滚到代码的先前版本。

提示:如果您有 GitHub Copilot 订阅,并且安装了 Github Copilot 扩展,则可以使用 *闪光* 图标来生成提交消息

您可以在资源管理器视图底部的 时间线 视图中导航和查看所有本地文件更改和提交。

Timeline view with one item selected and its change being shown in the editor

推送和拉取远程更改

一旦您对本地 Git 仓库进行了提交,就可以将它们推送到远程仓库。 同步更改 按钮指示将要推送和拉取的提交数量。 选择 同步更改 按钮会下载(拉取)任何新的远程提交,并将新的本地提交上传(推送)到远程仓库。

Sync button with one change to push

提示: 您可以启用 Git: 自动获取 设置,以始终获取最新的远程提交指示。

也可以使用各自的命令单独执行推送和拉取。 您可以从源代码管理菜单访问这些命令。

Source Control menu that shows all source control commands

使用分支

在 Git 中,分支 允许您同时处理代码库的多个版本。 这对于试验新功能或进行大型代码更改而不影响主代码库非常有用。

状态栏中的分支指示器显示当前分支,并允许您切换到新的和现有的分支。

Branch indicator in the Status bar

要创建新分支,请选择分支指示器并选择从当前分支或其他本地分支创建它。 键入新分支的名称,然后确认。 VS Code 创建一个新分支并切换到它,允许您在不影响主分支的情况下更改代码。

Create branch quick prompt that shows when selecting the branch indicator

提示: 如果您使用 GitHub Pull Requests and Issues 扩展,您可以直接从 issue 创建一个分支,这将使您开始在一个新的本地分支中工作,并自动为您预填充 pull request。

创建本地分支后,您可以通过选择 源代码管理 视图中的 发布分支 将分支推送到远程仓库。 这会在远程仓库上创建一个新分支,允许您在该分支中与他人协作。

创建和审查 GitHub pull request

在 Git 和 GitHub 中,pull request (PR) 是一种协作方式,可以让协作者审查并将单独分支中的代码更改合并到主分支中。 这使团队能够在将代码更改合并到主代码库之前对其进行审查和批准,从而确保仅合并高质量的更改。

要在 VS Code 中使用 pull request,您需要安装 GitHub Pull Requests and Issues 扩展。 此扩展为 VS Code 添加了 PR 和 issue 跟踪功能,允许您从编辑器内创建、审查和合并 PR。

要创建 PR,请确保您在与主分支不同的单独分支上,并将代码更改推送到远程仓库。 在 源代码管理 视图中,选择 创建 Pull Request 按钮。 这将打开 PR 创建表单,您可以在其中输入 PR 的标题和描述,并选择将更改合并到哪个分支。 选择 创建 以创建 PR。

Source Control view, highlighting the 'Create pull request' button

要审查 PR,请在 源代码管理 视图中选择 审查 Pull Request 按钮,然后选择要审查的 PR。 这将在新的编辑器窗口中打开 PR,您可以在其中审查代码更改并留下注释。 对代码更改感到满意后,可以选择 合并 按钮将 PR 合并到目标分支。

VS Code 的 GitHub 文档 中了解有关 pull request 的更多信息。

在内置终端中使用 Git

由于所有 Git 状态都保存在本地仓库中,因此您可以轻松地在 VS Code 的 UI、内置终端 或外部工具(如 GitHub Desktop)之间切换。 您还可以将 VS Code 设置为默认的 Git 编辑器,允许您使用 VS Code 编辑提交消息和其他 Git 相关文件。

Windows 上的 Git Bash

Git Bash 是一个流行的 Windows shell 环境,它提供了一个类似 Unix 的命令行界面,用于处理 Git 和其他命令行工具。 Visual Studio Code 的集成终端支持 Git Bash 作为 shell,允许您将 Git Bash 无缝集成到您的开发工作流程中。 如果在安装步骤中未取消选择,则在 Windows 计算机上安装 Git 也会安装 Git Bash。

Selecting Git Bash as shell in Visual Studio Code's built-in terminal

首先打开 视图 > 终端 (⌃` (Windows, Linux Ctrl+`))。 选择终端面板中 + 图标旁边的下拉箭头,以选择要打开的新 shell。 如果安装了 Git Bash,它会显示在终端和 shell 列表中。 您可以在终端侧边栏中切换不同的终端和 shell。 在 Visual Studio Code 中配置 Git Bash 后,您现在可以直接从代码编辑器中的终端使用所有您喜欢的 Git 命令。

如果要将 Git Bash 设置为默认 shell,请打开终端下拉菜单(在 + 图标旁边),然后选择 选择默认配置文件。 这将打开可用 shell 的列表,包括 Git Bash。 选择 *Git Bash* 会将其设置为默认 shell,所有未来的终端都将使用 Git Bash 打开。 更多高级终端技巧请参见终端文档