VS Code 只暂存部分改动的操作步骤
来源:17golang原创
时间:2026-10-17 10:43:50 309浏览 收藏
VS Code 只暂存部分改动时,应从 Source Control 的 Changes 列表打开文件差异,选中本次需要的行,再执行 Stage Selected Ranges。不要点击文件旁的整文件加号;暂存后应分别查看 Staged Changes 与 Changes,确认剩余改动仍留在工作区。
官方地址:https://code.visualstudio.com/
准备一个已有提交的练习仓库,使用已跟踪、已保存且没有合并冲突的文本文件。示例设定为 README.md:一处修正标题,另一处调整说明句,本次只准备标题修正。下列图片均为原创界面操作示意图,不是实际软件截图;安装语言、主题和布局不同会影响视觉位置,英文命令名可用于对照。
步骤1:从 Changes 打开需要拆分的文件
点击左侧活动栏的 Source Control(源代码管理),在目标仓库的 Changes(更改)分组中点击 README.md,打开差异编辑器。先找到标题修正与说明句修改这两处差异,明确本次只要哪一处。

进入下一步前,应能在差异视图中看到目标修改。多仓库工作区要先确认仓库,不能只凭文件名判断。没有 Changes 项时,先检查是否打开了正确的仓库、是否保存文件,以及文件是否被忽略。
步骤2:只暂存选中范围,再查看暂存版本
在差异编辑器的修改侧选中标题变更涉及的行,右键选择 Stage Selected Ranges(暂存所选范围)。也可保持选区,通过命令面板搜索 Git: Stage Selected Ranges。选区应覆盖完整的逻辑修改,不要顺手把另一段无关说明一起选中。

成功后,README.md 可以同时出现在 Staged Changes(暂存的更改)和 Changes 中,这是部分暂存的正常状态。点击 Staged Changes 中的文件,应只看到本次标题修正;再点击 Changes 中的同名文件,应仍看到没有暂存的说明句改动。若暂存视图包含了整文件的无关改动,先按下一步取消暂存后重新选择。
Git 暂存区保存的是暂存当时的内容。此后继续编辑并保存文件,不会自动把新内容放入暂存区;相关语义可参阅 Git 暂存说明。这也意味着不能只看工作区文件,就推断下一次提交的准确内容。
步骤3:误选时用 Unstage,保留所有编辑
在 Staged Changes 中右键 README.md,选择 Unstage Changes(取消暂存更改),即可把该文件移出暂存范围而保留工作文件。若只想取消一部分已暂存内容,可在该暂存差异视图选中相应行,使用旁边的 Unstage 操作;不确定范围时,整文件取消暂存再重选更容易理解。

继续前,应看到对应暂存项消失或减少,同时工作文件仍包含自己的编辑。取消暂存与恢复工作区是不同目标,Git restore 文档也区分了暂存区和工作区。
不要误用 Discard Changes 或差异视图中的 Revert。这些操作可能移除工作区修改,不能作为“取消暂存”的替代。拿不准时先保留独立副本,不依赖丢弃后的恢复能力。
| 目标 | 本次应选择 |
|---|---|
| 只准备某几行 | Stage Selected Ranges |
| 整份文件都进入暂存 | Stage Changes,本任务通常不选 |
| 编辑保留,但退出暂存 | Unstage Changes |
| 删除尚未提交的工作 | 不属于本任务,不点 Discard |
同一文件出现在两个分组是重复了吗?不是,它同时存在已暂存与未暂存差异。
只选几行就能保证提交可以独立运行吗?不能。行级选择只是内容拆分,仍需读者判断依赖是否完整,并在适当环境检查该暂存版本。
菜单里没有对应命令怎么办?先确认打开的是 Changes 中的文本差异而不是普通文件标签,并在修改侧建立有效选区;冲突文件、二进制文件和特殊提供程序不能直接套用本例。
完成本任务的标志是暂存视图只包含目标修改,其他修改仍在 Changes。这里不要求提交或推送;保存、暂存、本地提交和远端推送是不同操作。具体入口参见 VS Code 官方暂存与取消暂存指南。
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
234 收藏
-
222 收藏
-
286 收藏
-
373 收藏
-
118 收藏
-
140 收藏
-
412 收藏
-
264 收藏
-
180 收藏
-
292 收藏
-
302 收藏
-
259 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 485次学习