Visual Studio Git 使用指南
文章目录
- [Visual Studio Git 使用指南](#Visual Studio Git 使用指南)
-
- [1. Git 环境准备](#1. Git 环境准备)
- [2. 打开或克隆仓库](#2. 打开或克隆仓库)
-
- [2.1 克隆远程仓库](#2.1 克隆远程仓库)
- [2.2 创建本地新仓库](#2.2 创建本地新仓库)
- [2.3 打开已有的本地仓库](#2.3 打开已有的本地仓库)
- [3. Git 更改窗口(Git Changes)](#3. Git 更改窗口(Git Changes))
-
- [3.1 查看更改(Changes)](#3.1 查看更改(Changes))
- [3.2 暂存(Stashes)与取消暂存](#3.2 暂存(Stashes)与取消暂存)
- [3.3 提交更改(Commit Changes)](#3.3 提交更改(Commit Changes))
- [3.4 拉取(Pull)、推送(Push)与同步(Sync)](#3.4 拉取(Pull)、推送(Push)与同步(Sync))
- [4. 分支管理](#4. 分支管理)
-
- [4.1 查看与切换分支](#4.1 查看与切换分支)
- [4.2 创建新分支](#4.2 创建新分支)
- [4.3 合并分支](#4.3 合并分支)
- [4.4 删除分支](#4.4 删除分支)
- [5. 查看历史与比较](#5. 查看历史与比较)
-
- [5.1 提交历史](#5.1 提交历史)
- [5.2 比较文件差异](#5.2 比较文件差异)
- [6. 解决合并冲突](#6. 解决合并冲突)
- [7. 与远程仓库交互](#7. 与远程仓库交互)
-
- [7.1 添加远程仓库](#7.1 添加远程仓库)
- [7.2 推送至远程](#7.2 推送至远程)
- [7.3 拉取请求与代码评审](#7.3 拉取请求与代码评审)
- [8. 高级功能](#8. 高级功能)
-
- [8.1 储藏(Stash)](#8.1 储藏(Stash))
- [8.2 重置与还原](#8.2 重置与还原)
- [8.3 Cherry-pick](#8.3 Cherry-pick)
- [8.4 标签(Label)](#8.4 标签(Label))
- [9. 设置与配置](#9. 设置与配置)
-
- [9.1 全局 Git 设置](#9.1 全局 Git 设置)
- [9.2 忽略文件](#9.2 忽略文件)
- [9.3 启用/禁用 Git 功能](#9.3 启用/禁用 Git 功能)
- [10. 实用技巧与最佳实践](#10. 实用技巧与最佳实践)
- 结语

Visual Studio 自 2017 版本以来就深度集成了 Git,提供了直观的图形界面来管理源代码。从 Visual Studio 2019 的 16.8 版本开始,微软推出了全新的 Git 体验(默认启用),它替代了旧版的"团队资源管理器"中的 Git 功能,使 Git 操作更加直接、高效。本指南将基于最新的 Git 体验(Visual Studio 2022)详细介绍如何在 Visual Studio 中使用 Git。
1. Git 环境准备
在开始之前,请确保:
- 已安装 Git for Windows (或其他平台的 Git),可从 git-scm.com 下载。
- 拥有一个代码托管平台账号(如 GitHub、Azure DevOps、GitLab 等),并已配置好 SSH 或个人访问令牌(推荐)。
- Visual Studio 中已启用 Git 体验(默认启用)。可在
工具>选项>环境>预览功能中查看"新的 Git 用户体验"是否勾选。
2. 打开或克隆仓库
2.1 克隆远程仓库
- 启动 Visual Studio,在"开始窗口"点击 克隆存储库。
- 输入远程仓库 URL(HTTPS 或 SSH),选择本地路径,点击 克隆。
- 克隆完成后,解决方案会自动加载(如果仓库中包含
.sln文件)。
或 在已打开的 VS 中:
点击右下角状态栏的 "Git" 图标,或使用菜单 Git > 克隆存储库。
2.2 创建本地新仓库
- 在 VS 中打开一个本地文件夹(
文件>打开>文件夹)。 - 在
Git菜单中选择 创建 Git 存储库。 - 选择"仅限本地",然后点击"创建"。该文件夹即被初始化为 Git 仓库。
2.3 打开已有的本地仓库
- 使用
文件>打开>文件夹/项目/解决方案直接打开位于 Git 仓库中的文件。 - VS 会自动检测并激活 Git 功能。
3. Git 更改窗口(Git Changes)
"Git 更改"窗口是日常操作的核心界面。可通过以下方式打开:
- 视图 > Git 更改
- 快捷键
Ctrl+0, Ctrl+G - 点击状态栏的 Git 分支名称旁的箭头
3.1 查看更改(Changes)
在"Git 更改"窗口中,可以看到所有已修改、新增、删除的文件,按解决方案、项目或文件夹分组。
- 未暂存的更改:列出工作区中的变动。
- 已暂存的更改:当你暂存文件后,它们会移至此区域。
3.2 暂存(Stashes)与取消暂存
- 暂存单个文件 :鼠标悬停文件,点击 "+" 按钮。
- 暂存所有文件 :点击"未暂存的更改"标题旁的 "+" 按钮。
- 取消暂存 :点击已暂存文件旁的 "-" 按钮。
3.3 提交更改(Commit Changes)
- 在"提交消息"框中输入清晰的提交说明(建议遵循约定式提交规范)。
- 点击 提交所有 或下拉箭头选择 提交并推送 、提交并同步 。
- 提交所有:仅将暂存内容提交到本地仓库。
- 提交并推送:提交后立即推送到远程。
- 提交并同步:提交后先拉取再推送(相当于 pull + push)。
如果只想提交部分文件,可先暂存这些文件,然后在"已暂存的更改"区域点击 提交。
3.4 拉取(Pull)、推送(Push)与同步(Sync)
- 拉取 (Fetch):从远程获取最新数据但不合并。点击"拉取"按钮(向下箭头)执行
git fetch。 - 拉取并合并(Merge) :相当于
git pull。点击"拉取"旁边的箭头,选择"拉取(拉取并合并)"。 - 推送(Push):将本地提交推送到远程。点击"推送"按钮(向上箭头)。
- 同步(Sync):先拉取后推送。点击"同步"按钮(循环箭头)。
这些按钮都位于"Git 更改"窗口的顶部工具栏。
4. 分支管理
在 Visual Studio 中,分支操作主要通过"Git 存储库"窗口或状态栏的分支选择器完成。
4.1 查看与切换分支
- 点击 VS 右下角状态栏的当前分支名称,弹出分支列表。选择其他分支即可切换。
- 也可通过菜单
Git> 管理分支 打开"Git 存储库"窗口,在"分支"下查看本地和远程分支,双击切换。
4.2 创建新分支
- 在状态栏分支选择器中点击 新建分支。
- 输入分支名称,选择基于哪个分支/提交创建,点击 创建。
- 创建后可以选择立即切换到该分支。
4.3 合并分支
- 切换到目标分支(例如
main)。 - 打开"Git 存储库"窗口(菜单
Git> 管理分支 打开"Git 存储库"窗口),找到要合并的分支(如feature),右键选择 合并。 - VS 会尝试自动合并。如果有冲突,会提示解决。
4.4 删除分支
- 在"Git 存储库"窗口的分支列表中,右键本地或远程分支,选择 删除。
5. 查看历史与比较
5.1 提交历史
- 在"Git 存储库"窗口(
Git> 查看分支历史记录 或Git> 管理分支)中,可以看到当前分支的提交历史图表。 - 点击任意提交,下方会显示该次提交的详细信息(更改的文件、作者、日期等)。
- 右键某个提交,可以执行 还原 、重置 、创建分支 等操作。
5.2 比较文件差异
- 在"Git 更改"窗口中,双击某个已修改的文件,即可打开差异视图(并排显示修改前后内容)。
- 在提交历史中,双击某个提交下的文件,也可查看该次提交引入的更改。
6. 解决合并冲突
当合并或拉取产生冲突时,Visual Studio 会提供图形化冲突解决工具。
- 冲突发生时,在"Git 更改"窗口会列出冲突文件,并显示红色感叹号。
- 双击冲突文件,打开 合并编辑器。
- 编辑器分为三部分:
- 左侧:当前分支(目标)的版本。
- 右侧:被合并分支(源)的版本。
- 底部:结果版本(可手动编辑)。
- 通过工具栏的按钮(如"取左侧"、"取右侧"、"取两者")快速合并,或直接编辑底部区域。
- 解决后点击 接受合并,文件即被标记为已解决。
- 所有冲突解决后,正常提交合并结果。
7. 与远程仓库交互
7.1 添加远程仓库
- 在"Git 存储库"窗口的"远程"部分,点击 添加远程。
- 输入远程名称(如
origin)和 URL。
7.2 推送至远程
- 如果当前分支尚未关联远程,首次推送时会提示"发布分支"。点击 发布 即可将本地分支推送到远程并建立跟踪关系。
7.3 拉取请求与代码评审
虽然 Visual Studio 不直接创建拉取请求(PR),但可以通过扩展(如 GitHub 扩展)或浏览器完成。VS 2022 内置了 GitHub 和 Azure DevOps 的 PR 查看功能(需安装相应工作负载)。例如,安装"适用于 Visual Studio 的 GitHub 扩展"后,可以在"Git 更改"窗口查看 PR 并添加评论。
8. 高级功能
8.1 储藏(Stash)
- 当需要临时保存当前工作但不想提交时,可以使用储藏。
- 在"Git 更改"窗口顶部,点击"储藏"按钮(或下拉箭头),选择 储藏所有。
- 要恢复储藏,点击"管理储藏"选择对应储藏项,点击 应用 或 弹出。
8.2 重置与还原
- 在"Git 存储库"窗口的提交历史中,右键某个提交:
- 重置:将当前分支 HEAD 移动到该提交(可选择重置模式:软、混合、硬)。
- 还原:创建一个新提交来撤销该次提交的更改。
8.3 Cherry-pick
- 在历史列表中,右键某个提交(非当前分支),选择 挑拣(Cherry-pick),将其应用到当前分支。
8.4 标签(Label)
- 在"Git 存储库"窗口的"标签"节点,可以 新建标签,并指定标签名、描述和目标提交。
9. 设置与配置
9.1 全局 Git 设置
- 打开
工具>选项> 源代码管理 > Git 全局设置。 - 可配置用户名、电子邮件、默认分支名、推送行为等。
9.2 忽略文件
- 在解决方案根目录创建或编辑
.gitignore文件。VS 提供了模板(如 VisualStudio.gitignore)。 - 也可以在"Git 更改"窗口中右键某个文件,选择 忽略此本地项 或 忽略此扩展名 ,VS 会自动更新
.gitignore。
9.3 启用/禁用 Git 功能
- 在
工具>选项> 环境 > 预览功能 中,可以切换"新的 Git 用户体验"开关。
10. 实用技巧与最佳实践
- 提交消息规范 :使用简洁明了的语言,建议遵循 Angular 提交规范(
feat:,fix:,docs:等)。 - 频繁提交,小而精:每个提交只做一件事,方便回滚和代码审查。
- 同步前先拉取:养成在推送前先拉取的习惯,避免冲突。
- 使用图形化解决冲突:VS 的合并编辑器非常直观,能显著降低解决冲突的难度。
- 善用储藏:当你需要紧急切换分支但工作区未完成时,使用储藏而不是提交半成品。
- 学习快捷键 :如
Ctrl+0, C打开 Git 更改窗口,Ctrl+0, R打开 Git 存储库窗口。
结语
Visual Studio 的 Git 集成已经非常成熟,覆盖了日常开发中绝大多数的版本控制需求。无论是初学者还是资深开发者,都可以通过图形界面高效地管理代码。如果你更习惯命令行,也可以在 VS 中打开"开发者 PowerShell"或"命令提示符"直接输入 Git 命令,图形界面和命令行可以互补使用。