关于 Visual Studio 中的 Git

Visual Studio 提供了一个用户界面,用于 Git,这是一个广泛使用的新式版本控制系统。 无论源代码是托管在 GitHub 存储库、Azure DevOps 还是另一个 Git 提供程序中,都可以在 Visual Studio IDE 中执行所有常见版本控制任务。 或者,您可以在没有任何提供商的情况下本地工作,并在准备连接到提供商时选择备份您的源代码。

使用的源代码不必使用 Visual Studio 创建。 无论是否有 Visual Studio 项目文件,都可以在任何 Git 存储库中使用任何源文件夹。

从 Visual Studio 中的 Git 和 GitHub 开始

开始将 Git 与 Visual Studio 配合使用:

  • 如果在 Git 提供程序(如 GitHub)上托管了 Git 存储库,请将存储库克隆到本地计算机。

  • 否则,可以轻松地 创建一个新的 Git 存储库,并添加您的代码。 如果还没有 Git 提供程序,建议从 GitHub 开始,因为 Visual Studio 中的 Git 体验已针对此提供程序进行优化。 GitHub 提供免费且安全的云代码存储,可在其中存储代码并从任何设备随时随地访问它。

不仅可以将 GitHub 和 GitHub Enterprise 帐户添加到密钥链,还可以像Microsoft帐户一样应用它们。 如果没有 GitHub 帐户,请按照以下步骤 创建 GitHub 帐户,以便立即与 Visual Studio 一起使用。 此外,在 Visual Studio 17.12 及更高版本中,您可以添加多个 GitHub 帐户,并根据需要在它们之间切换。 请参阅 将 GitHub 帐户添加到 Visual Studio 密钥链

Visual Studio 中“创建 Git 存储库”对话框的屏幕截图。

如果要在命令行中使用 git 命令,还应安装 Git for Windows(而不是Microsoft产品)。

在解决方案资源管理器中查看文件

克隆存储库或打开本地存储库时,Visual Studio 会切换到 Git 上下文。 解决方案资源管理器在 Git 存储库的根目录中加载文件夹,并扫描目录树中是否有任何可查看的文件,例如 CMakeLists.txt 或具有 .sln 文件扩展名的文件。 有关详细信息,请参阅在解决方案资源管理器中查看文件

分支和远程存储库

可以使用分支使相关更改与你正在处理的不相关的更改分开。 建议的 Git 工作流为你处理的每个功能或修补程序使用一个新的分支。 了解如何从 Visual Studio 创建分支

创建新分支并切换到该分支后,可以开始工作,方法是更改现有文件或添加新文件,然后将工作提交到存储库。 若要详细了解如何在 Visual Studio 中提交并更好地了解 Git 中的文件状态,请参阅 提交 页。

Git 是分布式版本控制系统,这意味着到目前为止所做的所有更改都是仅限本地的更改。 要将这些更改提交到远程存储库,必须将这些本地提交推送到远程存储库

如果在团队中工作,或者使用的是其他计算机,则可能需要提取和拉取远程存储库上的新更改。 若要详细了解如何在 Visual Studio 中管理 Git 网络操作,请参阅 提取、拉取、推送和同步 页。

Visual Studio IDE 的屏幕截图,其中显示了解决方案资源管理器中的 Git 菜单和 Git 更改选项卡。

存储库管理和协作

但是,有时更有必要专注于 Git 存储库。 例如,你可能需要了解清楚团队正在处理的内容,或者从其他分支复制提交,或只是清理传出的提交。 Visual Studio 包括功能强大的 存储库浏览 和协作功能,无需使用其他工具。

为了帮助你专注于 Git 存储库,Visual Studio 有一个 Git 存储库 窗口,该窗口是存储库中所有详细信息的合并视图,包括本地和远程分支和提交历史记录。 可以直接从菜单栏上的 Git视图 或状态栏访问此窗口。

显示 Visual Studio IDE 的屏幕截图。将显示解决方案资源管理器中的“创建新分支”窗口和“Git 更改”选项卡。

“创建新分支”窗口和解决方案资源管理器中的“Git 更改”选项卡。

浏览和管理 Git 存储库

若要详细了解如何使用 Visual Studio 中的“Git 存储库”窗口浏览和管理 Git 存储库,请参阅以下页面:

处理合并冲突

如果两个开发人员修改了文件中的相同行,并且 Git 不会自动知道哪一行是正确的,则合并期间可能会发生冲突。 Git 会停止合并,并通知你处于冲突状态。 在 解决合并冲突 页中了解详细信息。

个性化 Git 设置

若要在存储库级别和全局级别个性化 Git 设置,请执行以下步骤:

  1. 在菜单栏上,选择 “Git>设置”,或打开 “工具>选项 ”窗格,然后展开“ 所有设置>源代码管理>Git 设置>Git 全局配置 ”部分。

  2. 选择所需的选项

    “选项”窗格的屏幕截图,可在 Visual Studio IDE 中选择个性化设置和自定义设置。

  1. 在菜单栏上,选择 “Git>设置”,或打开 “工具>选项 ”对话框,然后展开“ 源代码管理>Git 全局设置” 部分。

  2. 选择所需的选项

    “选项”对话框的屏幕截图,可在 Visual Studio IDE 中选择个性化设置和自定义设置。

工作效率增强

在 Visual Studio 2022 版本 17.12中,可以选择任何代码部分,然后右键单击,展开 Git 子菜单,然后选择 复制 GitHub Permalink(或 复制 AzureDevOps Permalink)以生成 GitHub Permalink 或 Azure DevOps Permalink 并将其复制到剪贴板。 从那里,你可以将其粘贴到可以使用链接的任何位置,在浏览器中或通过电子邮件、聊天会话和文档共享它。 还可以在 Git 存储库 窗口中的嵌入式提交详细信息视图中执行相同的操作。 使用此功能,无需切换分支即可引用先前提交中的特定代码。 必须使用 Git 托管提供程序、GitHub 或 Azure DevOps 的帐户登录到 Visual Studio

在 Visual Studio 2022 版本 17.6中,可以 搜索 并将其 链接 到 GitHub 问题和 Azure DevOps 工作项。 请参阅 Git 功能以提高工作效率 博客文章。

后续步骤

提示

若要了解如何在 Visual Studio 中使用 Git 和 GitHub,请注册 Git 学习系列