讲师中心 微信公众号

工具推荐

视频效率加速
AniShort
AniShort

AI短剧协同制作平台

剧云
剧云

中文短剧剧本制作平台

Seko
Seko

AI短剧一键生成成片

立刻MV
立刻MV

低成本歌曲 MV、视频生成

VSCode怎么使用Git Stash暂存_VSCode暂存代码修改操作教程【实用】

千明吖_5715

千明吖_5715

发布时间:2026-04-14 13:54:30

|

665人浏览过

|

来源于php中文网

原创

VSCode的Git stash功能默认只处理已跟踪文件,不包含新建未add文件;需精细控制(如仅stash staged、含untracked)必须用终端执行git stash push命令。

vscode怎么使用git stash暂存_vscode暂存代码修改操作教程【实用】

VSCode 的 Git stash 功能能用,但默认只处理已跟踪文件,不 stash 新建未 add 的文件;想精细控制(比如只 stash staged 部分、带 untracked 文件、跳过暂存区),必须切终端手动执行 git stash push 命令。

怎么触发 stash:三个入口,效果有差异

VSCode 提供三种调用 stash 的方式,但底层行为不完全一致:

  • 命令面板输入 Git: Stash → 执行 git stash push -m "VS Code stash",仅 stash 已跟踪文件的全部修改(含未暂存 + 已暂存)
  • 源代码管理视图(Ctrl+Shift+G)→ 点右上角 ⋯ → Stash Changes → 同样执行默认 push,但会弹出可编辑的描述框
  • 右键某个已修改文件 → Stash Changes → 行为同上,不是只 stash 该文件,而是 stash 全局所有修改

注意:这三个入口都不支持 -S(只 stash staged)、--include-untracked 或 -u(含 untracked)等参数,需要就得开终端。

为什么新文件没被 stash?如何让它进去

VSCode 默认忽略未跟踪(untracked)文件,哪怕你刚新建了一个 utils.js 并写了几十行,Git: Stash 也不会把它收进去——这是 Git 本身的设计,VSCode 只是忠实地封装了默认行为。

Zyt text to digital person
Zyt text to digital person

使用禅境文字转数字人API,创建AI人像图片,将其转换为说话视频,可选运行LoRA训练,轮询异步任务等。

下载
  • 临时解决:在终端运行 git stash push -u -m "with untracked",-u 参数强制包含未跟踪文件
  • 长期设置:VSCode 设置中搜索 git.untrackedChanges,改为 all,之后图形化 stash 就会自动带上新建文件(但依然不支持 -S 或冲突时精细跳过)
  • 警告:如果新建文件里有敏感配置或本地密钥,-u 会一并 stash,切记检查

stash 后怎么恢复?pop 和 apply 别混用

恢复操作有两个常用命令,行为关键不同:

  • Git: Pop Stash → 执行 git stash pop,应用最近一条 stash 并从栈中删除它。如果应用后产生冲突,stash 不会自动删掉,但工作区已脏,需手动解决再 git add / git stash drop
  • Git: Apply Stash → 执行 git stash apply,只应用不删除,适合“先看看改得对不对”,确认无误再手动 git stash drop stash@{0}
  • 查看 stash 列表用 Git: Show All Stashes,列表格式是 stash@{0}: On main: xxx,数字越小越新;按 Delete 键可删选中项

别在合并进行中或存在冲突时点 stash 按钮——VSCode 会直接禁用,这不是 bug,是保护机制,强行绕过可能破坏索引状态。

哪些场景必须切终端?

图形界面省事,但遇到这几类需求,VSCode 内置 stash 就不够用了:

  • 只想 stash 已暂存(staged)部分,保留未暂存修改继续调试 → 必须 git stash push -S
  • 要 stash 一部分修改、保留另一部分(比如只 stash bugfix,留着实验性 feature)→ 得先 git add -p 精确暂存,再 git stash push -S
  • stash 后想看内容差异 → VSCode 不提供预览,终端跑 git stash show -p stash@{0} 最直接
  • 批量 drop 多个旧 stash → 图形界面只能逐个删,终端用 git stash clear 或 git stash drop stash@{1} stash@{2}

真正容易被忽略的是:stash 不是备份,它依赖当前分支的 HEAD 状态。如果在 stash 之后又做了提交、变基或切换到另一个 diverged 分支再 pop,很可能出现意料外的冲突或内容错位——别把它当 git commit 的轻量替代品。

热门AI工具

更多
豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

PixPix
PixPix Hot

PixPix是一款面向电商视觉生产的AI商品图生成工具。

二狗PPT
二狗PPT Hot

一款AI演示文稿工具,主要用于专为中式职场打造的AI PPT生成工具,适合需要提升相关任务效率的用户。

音述AI
音述AI Hot

一款AI音频处理工具,主要用于音述AI是一个以“用声音述说故事”为核心的 AI 音乐创作与声音分享社区,适合需要提升相关任务效率的用户。

Loomy
Loomy Hot

一款AI工具,主要用于科大讯飞发布的桌面级 AI 助理,比 OpenClaw 更易用、更安全!,适合需要提升相关任务效率的用户。

SkildArt
SkildArt Hot

SkildArt是一款AI文本写作工具,一站式 AI 视觉创作平台。

超级麦吉

一款通过数字员工协作完成调研、数据分析与文档制作的AI办公平台。

相关专题

更多
堆和栈的区别
堆和栈的区别

堆和栈的区别:1、内存分配方式不同;2、大小不同;3、数据访问方式不同;4、数据的生命周期。本专题为大家提供堆和栈的区别的相关的文章、下载、课程内容,供大家免费下载体验。

6927

2023.07.18

堆和栈区别
堆和栈区别

堆(Heap)和栈(Stack)是计算机中两种常见的内存分配机制。它们在内存管理的方式、分配方式以及使用场景上有很大的区别。本文将详细介绍堆和栈的特点、区别以及各自的使用场景。php中文网给大家带来了相关的教程以及文章欢迎大家前来学习阅读。

2848

2023.08.10

数据库Delete用法
数据库Delete用法

数据库Delete用法:1、删除单条记录;2、删除多条记录;3、删除所有记录;4、删除特定条件的记录。更多关于数据库Delete的内容,大家可以访问下面的文章。

3551

2023.11.13

drop和delete的区别
drop和delete的区别

drop和delete的区别:1、功能与用途;2、操作对象;3、可逆性;4、空间释放;5、执行速度与效率;6、与其他命令的交互;7、影响的持久性;8、语法和执行;9、触发器与约束;10、事务处理。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

1065

2023.12.29

js正则表达式
js正则表达式

php中文网为大家提供各种js正则表达式语法大全以及各种js正则表达式使用的方法,还有更多js正则表达式的相关文章、相关下载、相关课程,供大家免费下载体验。

4976

2023.06.20

js获取当前时间
js获取当前时间

JS全称JavaScript,是一种具有函数优先的轻量级,解释型或即时编译型的编程语言;它是一种属于网络的高级脚本语言,主要用于Web,常用来为网页添加各式各样的动态功能。js怎么获取当前时间呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

1455

2023.07.28

js 字符串转数组
js 字符串转数组

js字符串转数组的方法:1、使用“split()”方法;2、使用“Array.from()”方法;3、使用for循环遍历;4、使用“Array.split()”方法。本专题为大家提供js字符串转数组的相关的文章、下载、课程内容,供大家免费下载体验。

1918

2023.08.03

js是什么意思
js是什么意思

JS是JavaScript的缩写,它是一种广泛应用于网页开发的脚本语言。JavaScript是一种解释性的、基于对象和事件驱动的编程语言,通常用于为网页增加交互性和动态性。它可以在网页上实现复杂的功能和效果,如表单验证、页面元素操作、动画效果、数据交互等。

10503

2023.08.17

Go-Zero API开发使用教程
Go-Zero API开发使用教程

本专题聚焦Go-Zero的API开发,拆解.api描述文件的语法结构、路由与分组定义、参数绑定与校验规则,说明统一响应体、JWT鉴权、跨域与接口文档生成的落地方式,并给出网关聚合与接口测试的实践建议。

0

2026.11.12

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn