VS Code 中的 Git 简介
想要轻松管理源代码并与他人协作吗?Git 和 GitHub 就是您需要的工具!借助 Visual Studio Code,您可以轻松设置和使用它们。即使您是初学者,VS Code 的用户友好界面也能引导您完成常见的 Git 操作,例如推送和拉取代码、创建和合并分支以及提交代码更改。如果您是专业人士,您会喜欢直接在编辑器中执行 Git 操作的功能,与使用 Git 命令行相比,这可以节省您的时间和精力。此外,VS Code 和 Git 之间的无缝工作流程意味着您可以留在编辑器中完成更多工作。
借助 VS Code 中的 GitHub Copilot,您可以获得提交消息、拉取请求的建议,并在提交之前审查代码更改。了解更多关于 VS Code 中的 GitHub Copilot 的信息。
如果您还没有 Copilot 订阅,可以通过注册 Copilot 免费计划免费使用 Copilot。您将获得每月限量的自动补全和聊天交互。
在 VS Code 中设置 Git
要在 VS Code 中使用 Git 和 GitHub,首先请确保您已在计算机上安装了 Git。如果 Git 缺失,**源代码管理**视图会显示如何安装它的说明。之后请务必重启 VS Code。
此外,您可以在活动栏右下角的**帐户**菜单中使用您的 GitHub 帐户登录 VS Code,以启用其他功能,例如设置同步,以及从 GitHub 克隆和发布仓库。
打开一个 Git 仓库
VS Code 提供了多种方式来开始使用 Git 仓库,从本地到远程云驱动的环境,如 GitHub Codespaces。
在本地克隆一个仓库
要克隆一个仓库,请在命令面板 (⇧⌘P (Windows、Linux 为 Ctrl+Shift+P)) 中运行 **Git: Clone** 命令,或在**源代码管理**视图中选择**克隆仓库**按钮。
如果您从 GitHub 克隆,VS Code 会提示您使用 GitHub 进行身份验证。然后,从列表中选择一个仓库克隆到您的机器上。该列表包含公共和私有仓库。
对于其他 Git 提供商,请输入仓库 URL,选择**克隆**,并在您的本地机器上选择一个文件夹来克隆文件。当仓库在您的本地机器上克隆完成后,VS Code 会打开该文件夹。
在本地文件夹中初始化仓库
要初始化一个新的本地 Git 仓库:
-
在您的计算机上选择一个现有或新文件夹,并在 VS Code 中打开它。
-
在**源代码管理**视图中,选择**初始化仓库**按钮。
这会在当前文件夹中创建一个新的 Git 仓库,让您开始跟踪代码更改。
此操作相当于在命令行上运行
git init
。
将本地仓库发布到 GitHub
您也可以初始化一个本地仓库并直接将其发布到 GitHub。这会在您的 GitHub 帐户上创建一个新仓库,并将您的本地代码更改推送到远程仓库。将您的源代码放在远程仓库上是备份代码、与他人协作以及使用 GitHub Actions 自动化工作流程的好方法。
使用**源代码管理**视图中的**发布到 GitHub** 命令按钮。然后,您可以为仓库选择一个名称和描述,并选择将其设为公开或私有。
仓库创建后,VS Code 会将您的本地代码推送到远程仓库。您的代码现在已在 GitHub 上备份,您可以通过提交和拉取请求开始与他人协作。
在 codespace 中打开 GitHub 仓库
GitHub Codespaces 允许您在一个完全配置的基于云的开发环境中打开 GitHub 仓库,使您能够在浏览器中进行开发,而无需在本地计算机上安装任何软件。GitHub Codespaces 为个人提供免费使用,这使得在开源项目上开始工作变得容易。
为您的 GitHub 仓库创建一个 codespace:
-
在 VS Code 中安装 GitHub Codespaces 扩展并使用您的 GitHub 帐户登录。
-
运行 **Codespaces: Create New Codespace** 命令。
-
选择您想要打开的仓库和分支。
VS Code 会打开一个新窗口,连接到该 codespace。源代码、终端以及运行和调试都在远程基于云的开发环境中托管。
请注意,文件资源管理器和状态栏会指示工作区是在 codespace 中打开的。
另外,您也可以从 GitHub Codespaces 网站上的 codespace 模板开始。
如果您已在浏览器中打开了一个 codespace,请在浏览器中运行 **Codespaces: Open in VS Code Desktop** 命令,从您的本地 VS Code Desktop 连接到该 codespace。
您可以在 在 codespace 中开发 文档中了解更多关于 GitHub Codespaces 的信息,包括端口转发等自定义设置。
远程打开 GitHub 仓库
VS Code 的远程仓库支持允许您浏览和编辑 GitHub 仓库,而无需将其克隆到本地计算机。这对于快速对远程仓库进行更改而无需将整个代码库克隆到您的机器上非常有用。
-
首先安装 GitHub Repositories 扩展。
-
运行 **Remote Repositories: Open Remote Repository...** 命令,或使用资源管理器视图中的**打开远程仓库**按钮。
-
搜索并选择您想要打开的 GitHub 仓库。
如果您需要执行代码或运行终端命令,可以使用 **Continue Working on** 命令无缝地从远程仓库切换到 codespace。
暂存和提交代码更改
一旦您设置了 Git 仓库,就可以通过暂存和提交您新创建和编辑的代码来开始跟踪代码更改。
尽早并频繁地提交您的更改。这使得在需要时更容易恢复到代码的先前版本。
您可以从活动栏访问**源代码管理**视图,以列出工作区中所有已更改的文件。您可以使用源代码管理视图标题中的树/列表图标在树视图和列表视图之间切换。
当您在源代码管理视图中选择一个文件时,编辑器会显示一个差异视图,突出显示与先前提交的文件相比的文件更改。
要暂存文件,请选择**源代码管理**视图中文件旁边的 **+**(加号)图标。这会将文件添加到**暂存的更改**部分,表示它将包含在下一次提交中。
您也可以通过选择源代码管理视图中**更改**旁边的 **+**(加号)图标一次性暂存所有待处理的更改。
暂存的更改也可以通过选择文件旁边的 **−**(减号)图标来丢弃。同样,您可以通过选择源代码管理视图中**暂存的更改**旁边的 **−**(减号)图标来丢弃所有暂存的更改。
要提交您暂存的更改,请在上方的文本框中输入提交消息,然后选择**提交**按钮。这会将您的更改保存到本地 Git 仓库,使您可以在需要时恢复到代码的先前版本。
借助 VS Code 中的 GitHub Copilot,您可以根据代码更改生成提交消息。了解更多关于使用 AI 生成提交消息的信息。在提交更改之前,您还可以让 Copilot 对未提交的更改进行代码审查。
您可以在资源管理器视图底部的**时间线**视图中导航和审查所有本地文件的更改和提交。
推送和拉取远程更改
在您向本地 Git 仓库提交更改后,可以将它们推送到远程仓库。**同步更改**按钮会指示将要推送和拉取的提交数量。选择**同步更改**按钮会下载(拉取)任何新的远程提交,并上传(推送)新的本地提交到远程仓库。
您可以启用 **Git: Autofetch** 设置来始终获取最新的远程提交指示器。
推送和拉取也可以通过使用各自的命令单独执行。您可以从源代码管理菜单访问这些命令。
使用分支
在 Git 中,分支允许您同时处理代码库的多个版本。这对于在不影响主代码库的情况下试验新功能或进行大的代码更改非常有用。
状态栏中的分支指示器显示当前分支,并允许您切换到新的和现有的分支。
要创建新分支,请选择分支指示器,并选择从当前分支或其他本地分支创建。为新分支键入一个名称并确认。VS Code 会创建一个新分支并切换到它,让您可以在不影响主分支的情况下对代码进行更改。
如果您使用 GitHub Pull Requests and Issues 扩展,您可以直接从一个议题(issue)创建分支,这会让您在一个新的本地分支中开始工作,并自动为您预填充拉取请求。
在您创建本地分支后,可以通过在**源代码管理**视图中选择**发布分支**将该分支推送到远程仓库。这会在远程仓库上创建一个新分支,让您可以与他人在该分支中协作。
创建和审查 GitHub 拉取请求
在 Git 和 GitHub 中,拉取请求 (PR) 是一种协作者审查和合并来自不同分支的代码更改到主分支的方式。这使得团队能够在代码更改被并入主代码库之前审查和批准它们,从而确保只有高质量的更改被合并。
要在 VS Code 中使用拉取请求,您需要安装 GitHub Pull Requests and Issues 扩展。此扩展为 VS Code 添加了 PR 和议题跟踪功能,允许您在编辑器内创建、审查和合并 PR。
要创建 PR,请确保您在一个与主分支不同的分支上,并将您的代码更改推送到远程仓库。在**源代码管理**视图中,选择**创建拉取请求**按钮。这将打开 PR 创建表单,您可以在其中输入 PR 的标题和描述,并选择要将更改合并到的分支。选择**创建**以创建 PR。
使用 GitHub Copilot 根据 PR 中包含的提交生成 PR 标题和描述。选择 PR 标题字段旁边的*闪烁*图标以生成 PR 标题和描述。在创建 PR 之前,您还可以让 Copilot 对 PR 进行代码审查。选择 GitHub Pull Request 视图中的**代码审查**按钮。
在 VS Code 的 GitHub 文档中了解更多关于拉取请求的信息。
在内置终端中使用 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,前提是在安装步骤中没有取消选择它。
首先打开**视图** > **终端** (⌃` (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 打开。更多高级的终端技巧可在终端文档中找到。