You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Visual Studio 2022中临时保存分支Two变更应选哪个选项?

问题:分支中途切换时,如何选择正确的暂存选项?

操作背景:

  • 检出Main分支
  • 基于Main分支创建名为One的新分支,完成任务并提交
  • 重复上述步骤,创建名为Two的新分支并处理任务

在处理分支Two的任务中途,发现分支One存在bug,尝试切换到One分支时,Visual Studio 2022给出三个选项:

  • 将变更带入One分支
  • 暂存变更(Stash the changes)
  • 丢弃变更

需求是临时保存分支Two的所有变更,修复One分支bug后继续处理Two的任务(确保无变更丢失)。已知要选暂存变更,但对Commit All下拉菜单中的两个选项感到困惑:

  • Stash All (--include-untracked)
  • Stash All and keep staged (--keep-index)

请问应选择哪个选项?


解决方案

两个选项的核心区别:

  • Stash All (--include-untracked):保存当前工作区的所有变更,包括已修改的追踪文件和未被Git记录的新文件(比如刚创建还没执行git add的文件),保存后工作区会回到干净状态。
  • Stash All and keep staged (--keep-index):仅保存工作区中未暂存的变更,已经执行git add暂存的文件会保留暂存状态留在当前分支。

推荐选择:

如果你要确保所有变更(包括新创建的未追踪文件)都被完整保存,后续切换回Two分支能完全恢复到暂停前的状态,直接选**Stash All (--include-untracked)**即可。

这个选项会把你在Two分支上做的所有修改(不管有没有执行git add)都暂存起来,切换到One分支修复bug后,回到Two分支执行git stash pop就能恢复所有变更,继续之前的工作,不会有任何内容丢失。

内容的提问来源于stack exchange,提问作者Computer

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 16:01:35