讲师中心 微信公众号
AI工具推荐 视频效率加速

VSCode怎么使用Git Stash暂存功能_VSCode如何在编辑器中暂存和恢复代码修改【攻略】

轻墨酱_7139

轻墨酱_7139

发布时间:2026-03-20 16:38:02

|

816人浏览过

|

来源于php中文网

原创

在 VSCode 中触发 Git Stash 需右键修改文件选“Stash Changes...”或用命令面板执行“Git: Stash Changes”,注意当前是否含暂存更改以决定是否弹窗;恢复时用“Git: Apply Stash”或“Git: Pop Stash”,建议优先试用 Apply。

vscode怎么使用git stash暂存功能_vscode如何在编辑器中暂存和恢复代码修改【攻略】

怎么在 VSCode 里触发 Git Stash

VSCode 的 Git 面板本身不提供独立的「Stash」按钮,但 stash 功能已深度集成在源代码管理视图的操作流中。关键不是找按钮,而是理解它藏在哪几个交互节点里。

常见错误现象:Ctrl+Shift+P 搜 Git: Stash 没反应?—— 很可能你当前工作区没打开 Git 仓库,或未启用 Git 扩展(默认已启用,但禁用后会消失)。

  • 确保左侧活动栏点击了 源代码管理 图标(分支图标),且右上角显示当前分支名(如 main)
  • 右键任意已修改文件 → 出现 Stash Changes... 菜单项(注意是省略号,表示有弹窗)
  • 或者按 Ctrl+Shift+P(macOS 为 Cmd+Shift+P),输入 Git: Stash Changes,回车后会提示输入 stash 描述(可空)
  • 执行后,修改会从工作区和暂存区同时移除,git status 显示干净,但可通过 git stash list 查到记录

为什么点「Stash Changes」后没弹出输入框

VSCode 默认行为是:如果当前只有「未暂存的更改」(即没 git add 过),它会直接执行 git stash push -m "...";但如果已有部分改动被 git add 进暂存区(staged),它就必须弹窗让你选「Stash including staged changes」还是「Stash only untracked and modified」——否则语义不明确。

VSCode
VSCode

避免常见的 VSCode 错误——设置冲突、调试器配置和扩展冲突。

下载
  • 容易踩的坑:手动执行过 git add . 后再点菜单,VSCode 会卡在弹窗等待选择,但窗口可能被其他面板遮挡(尤其多窗口时)
  • 解决方法:留意右下角状态栏是否出现「Stash changes」提示,或切到终端看是否有阻塞进程
  • 参数差异:Git: Stash Changes 对应 git stash push,而旧命令 git stash save 已废弃,VSCode 不支持

恢复 stash 时选错条目导致覆盖当前修改

VSCode 的 stash 恢复入口藏得更深:必须先打开命令面板(Ctrl+Shift+P),搜 Git: Apply Stash 或 Git: Pop Stash。二者区别直接影响是否留底:

  • Git: Apply Stash = git stash apply:应用后 stash 仍保留在栈中,适合试还原
  • Git: Pop Stash = git stash pop:应用后自动删除该 stash,一旦冲突失败,stash 也丢了
  • 容易踩的坑:执行 Pop 时 VSCode 不二次确认,如果当前工作区有未提交修改,且与 stash 冲突,会直接报错并中断,stash 消失,原始修改也没了
  • 建议流程:先 Apply,确认没问题再手动 git stash drop 删除;或者用终端执行 git stash pop --index 保留暂存状态

stash 列表为空但 git stash list 有内容

VSCode 的 stash 面板(在源代码管理视图底部「STASHES」区域)只显示当前分支对应的 stash,默认不刷新。这不是 bug,是性能取舍——它不会主动轮询 git stash list。

  • 使用场景:切换分支后 stash 没自动更新,或别人推送了新 commit 导致本地 stash 基线偏移
  • 解决方法:点击 STASHES 区域右上角的刷新图标(↻),或按 Ctrl+Shift+P 执行 Git: Refresh
  • 兼容性影响:VSCode 1.85+ 支持 git stash show -p 预览,但老版本只能看到描述和时间,看不到具体变更文件
  • 注意:git stash list 输出格式依赖 Git 版本,VSCode 解析失败时会跳过该条目,表现为列表比终端少一条

stash 的本质是临时提交,不是备份工具。跨分支操作、rebase 后恢复、或 stash 中含二进制文件时,冲突概率远高于普通 merge —— 这些时候别依赖图形界面的一键操作,终端里看 git stash show -p stash@{0} 更可靠。

热门AI工具

更多
切问学术

切问学术是一款AI论文写作工具,复旦大学NLP团队推出的AI学术智能体。

Loomy
Loomy Hot

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

音述AI
音述AI Hot

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

讯飞智作

讯飞智作是一款AI视频创作工具,AI文本配音工具,数字人课程、营销视频制作。

讯飞绘文

讯飞绘文是一款由科大讯飞推出的一站式 AIGC 内容运营平台。

WorkBuddy

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

PixPix
PixPix Hot

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

DeepSeek

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

豆包大模型

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

相关专题

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

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

5847

2023.07.18

堆和栈区别
堆和栈区别

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

2508

2023.08.10

自建git服务器
自建git服务器

git服务器是目前流行的分布式版本控制系统之一,可以让多人协同开发同一个项目。本专题为大家提供自建git服务器相关的各种文章、以及下载和课程。

6359

2023.07.05

git和svn的区别
git和svn的区别

git和svn的区别:1、定义不同;2、模型类型不同;3、存储单元不同;4、是否拥有全局版本号;5、内容完整性不同;6、版本库不同;7、克隆目录速度不同;8、分支不同。php中文网为大家带来了git和svn的相关知识、以及相关文章等内容。

1840

2023.07.06

git撤销提交的commit
git撤销提交的commit

Git是一个强大的版本控制系统,它提供了很多功能帮助开发人员有效地管理和控制代码的变更,本专题为大家提供git 撤销提交的commit相关的各种文章内容,供大家免费下载体验。

1074

2023.07.24

git提交错误怎么撤回
git提交错误怎么撤回

git提交错误撤回的方法:git reset head^:撤回最后一次提交,恢复到提交前状态。git revert head:创建新提交,内容与之前提交相反。git reset :使用提交的 sha-1 哈希撤回指定提交。交互式舞台区:标记要撤回的特定更改,然后提交,排除已撤回更改。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

4137

2024.04.09

git怎么对比两个版本的文件内容
git怎么对比两个版本的文件内容

要对比两个版本的 git 文件,请使用 git diff 命令:git diff 比较工作树和暂存区之间的差异。git diff 比较两个提交或标签之间的差异。git diff 输出显示差异块,其中 + 表示添加的行,- 表示删除的行, 表示修改的行。可使用 gitkraken、meld、beyond compare 等可视化工具更直观地查看差异。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

3901

2024.04.09

vscode是什么_vscode怎么安装配置
vscode是什么_vscode怎么安装配置

VS Code(Visual Studio Code)是一款免费、开源的跨平台代码编辑器,由微软开发和维护。它被广泛用于软件开发和编程,支持多种编程语言和框架。VS Code 同时提供了丰富的功能和扩展性,使开发者可以高效地编写、编辑和调试代码。

1395

2023.06.30

OpenJDK JVM参数怎么调优
OpenJDK JVM参数怎么调优

Java应用运行缓慢,如何调整JVM参数?本专题介绍OpenJDK JVM性能调优的基本流程,涵盖性能指标确认、运行数据采集、内存配置和垃圾回收分析,帮助你先定位瓶颈,再通过对照测试验证效果,避免直接套用参数而影响应用稳定性。

80

2026.10.16

热门下载

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

精品课程

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

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