本站点文档内容均翻译自code.visualstudio.com,仅供个人学习,如有差异请以官网为准。

VS Code 的源代码管理

Visual Studio Code 集成了源代码控制管理(SCM),使您能够在编辑器中直接与 Git 和其他版本控制系统一起工作。Git 支持是内置的,您可以从 Visual Studio 市场 安装其他 SCM 提供程序的扩展。

集成的源代码控制界面通过图形界面提供对Git功能的访问,而不是终端命令。您可以进行如暂存更改、提交文件、创建分支和解决合并冲突等Git操作,而无需切换到命令行。

你在 VS Code 界面所做的更改会与你在命令行中的 Git 操作保持同步,因此你可以根据需要在界面和终端之间进行切换。源代码控制界面与命令行并行工作,而不是取代它。

先决条件

要使用 VS Code 中的 Git 功能,您需要:

  • VS Code 使用您机器上的 Git 安装。安装版本 2.0.0 或更高版本的 Git在您的机器上。

  • 当你提交更改时,Git 使用你配置的用户名和电子邮件。你可以用以下命令设置这些值:

    git 配置 --全局 用户名 "你的名字"
    git 配置 --全局 用户邮箱 "your.email@example.com"
    
小贴士

如果你是Git的新手,git-scm网站是一个很好的起点,提供了一本受欢迎的在线书籍《入门指南》视频速查表

开始使用代码库

VS Code 会自动检测您打开的文件夹是否是 Git 仓库,并激活所有源代码控制功能。要开始使用新的或现有的仓库,您有几种选择:

  • 初始化一个新的仓库:为当前文件夹创建一个新的Git仓库。

  • 克隆一个仓库:从GitHub或其他Git主机克隆一个现有的仓库。

  • 打开远程仓库:使用 GitHub 仓库 扩展在不将仓库克隆到本地机器的情况下进行仓库工作。

小贴士

你可以使用 发布到 GitHub 命令直接将本地仓库发布到 GitHub,该命令一步创建新仓库并推送你的提交。

了解更多关于 克隆和发布仓库的信息。

源代码控制界面

VS Code 通过几个主要的用户界面元素提供 Git 功能。这种 UI 集成使您能够在不知道终端命令的情况下执行 Git 操作:

  • 源代码管理视图:集中管理点,用于进行如暂存、提交和管理更改等常见Git操作

    源代码管理视图的截图,显示已暂存的更改,和差异编辑器显示并排更改。

  • 源代码控制图:您的提交历史和分支关系的图形表示

    源代码控制图的截图,显示提交历史记录。

  • Diff编辑器:并排文件比较,用于有效的更改审查

    显示文件版本之间更改的差异编辑器截图。

  • 其他用户界面元素:上下文中的Git信息,如编辑器边距指示器或Git责任注释

    编辑器边缘指示器的截图显示了行更改,悬停显示了Git责备信息。

常见工作流程

在提交之前,请审查更改。

在提交更改之前,重要的是要审查更改,以确保准确性和质量。使用 VS Code 的 AI 功能对更改进行代码审查,并在编辑器中获取审查意见和建议。

代码审查结果的截图,显示为编辑器覆盖注释。

阶段并提交更改

在源代码控制视图中查看您的更改,然后通过选择每个文件旁边的+图标来分阶段文件,或者一次分阶段所有更改。要进行更精细的控制,请从文件的差异视图中分阶段特定行或选择。

源代码管理视图中暂存更改的截图。

在输入框中输入您的提交信息或选择闪烁图标 (在提交信息输入框中使用AI根据您的暂存更改生成提交信息。

生成提交信息的 Copilot 截图。

了解更多关于暂存更改和提交更改的信息。

与远程同步

当您的分支连接到远程分支时,VS Code 在状态栏中显示同步状态,并在源代码控制视图中显示传入和传出的提交。您可以快速同步或执行单独的获取、拉取和推送操作。

源代码管理视图的截图,显示了同步按钮,指示出有出站和入站更改。

了解更多关于使用仓库和远程的信息。

解决合并冲突

当您遇到合并冲突时,VS Code 会在源代码控制视图中突出显示有冲突的文件。打开带有冲突的文件以查看内联冲突标记。您有几种选项来解决冲突:

  • 使用内联编辑器操作直接在编辑器中选择如何解决冲突
  • 使用三路合并编辑器以并排查看更改和合并结果
  • 使用AI助手来帮助解决合并冲突

三路合并编辑器的截图。

了解更多关于解决合并冲突的信息。

处理分支、工作树和暂存区

VS Code 支持多种并行开发工作的管理流程。

  • 单个工作区中快速切换分支以处理不同的功能或修复。

    分支快速选择的截图,显示了切换到分支或创建新分支的选项。

  • 使用Gitworktrees来为不同的分支创建单独的工作目录,以便同时处理多个分支。

  • 使用Git暂存来临时保存未提交的更改,当您需要快速切换上下文时。

了解更多关于分支和工作树的使用

查看提交历史

查看提交历史记录有助于了解您的代码如何随时间变化。

  • 代码管理图提供了您的分支结构和提交历史的可视化表示,突出显示入站和出站提交。

    源代码管理图的截图,显示提交历史和分支结构。

  • 资源管理器视图中的时间轴视图显示特定文件的提交历史记录,使您能够查看其如何演变。您可以过滤时间轴,仅显示Git提交或包括本地文件更改。

    时间线视图的截图,显示了文件提交历史记录。

了解更多关于使用图表和时间轴视图及查看更改的信息。

处理 GitHub 拉取请求和问题

VS Code 与 GitHub 集成,可在编辑器中直接提供拉取请求和问题管理。安装 GitHub 拉取请求和问题 扩展以:

  • 创建、查看和合并拉取请求
  • 查看和管理问题
  • 在 VS Code 中评论和批准 PR
  • 查看 PR 分支并在本地审查更改

了解更多关于在 VS Code 中使用 GitHub的信息。

其他源代码管理提供商

VS Code 支持多种源代码管理提供者。虽然内置了对 Git 的支持,但您可以安装扩展以用于其他版本控制系统,如 Azure DevOps、Subversion 或 Mercurial。

在扩展视图中浏览可用的 SCM 提供程序扩展 (⇧⌘X (Windows, Linux Ctrl+Shift+X)) 通过搜索 @类别:"scm 提供者"输入:.

下一步