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

使用Git时如何在本地同时操作两个分支,避免未提交改动相互干扰?

原因说明

未提交的工作区、暂存区改动不属于任何Git分支,只要改动内容和目标分支的对应文件没有冲突,切换分支时这些改动会默认跟随到新分支的工作区,这是Git的正常设计。

避免方法

根据你对b1分支改动的后续处理需求,选择对应操作即可:

  • 如果b1的改动尚未完成,后续还要继续开发:
    切换回b1分支,执行git stash命令暂存当前改动,执行后工作区会恢复到改动前的状态,此时再切回master分支就不会携带b1的改动。后续需要恢复改动时,切回b1执行git stash pop即可还原之前的修改,存在多个暂存记录时可以用git stash list查看所有暂存内容按需恢复。
  • 如果b1的改动已经开发完成:
    在b1分支执行git add <改动文件名>、git commit -m "提交说明"将改动提交到b1分支,提交后的修改属于b1分支的提交记录,再切master就不会被携带。
  • 如果b1的改动不再需要:
    在b1分支执行git restore <改动文件名>(Git 2.23及以上版本支持),或旧版本执行git checkout -- <改动文件名>丢弃对应改动,之后再切换分支即可。

补充说明

如果未提交的改动和目标分支的对应文件内容存在冲突,Git会直接阻止分支切换,提示你先处理改动(提交/暂存/丢弃)后再操作。

内容的提问来源于stack exchange,提问作者Sourav Kannantha B

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 19:36:03