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

Git新手同一项目双分支并行开发无冲突操作咨询

Git多分支并行开发操作指南

现有操作方案可行性判断

你梳理的流程不可行。Git的未提交改动属于工作区和暂存区,不属于任何分支,只要没有文件冲突,切换分支时这些改动会一直跟随工作区。如果两个功能的改动同时存在于工作区,即使你只提交指定目录的内容,切换分支时未提交的另一个功能的改动也会被带过去,很容易出现误提交、代码混改的问题。

正确操作流程(推荐两种低风险方案)

方案1:暂存未完成改动(最常用,适合临时切换分支的场景)

  • 停留在第一个功能的开发分支,执行git stash,命令会将当前工作区、暂存区的所有未提交改动存入Git暂存栈,工作区会恢复为当前分支最新提交的干净状态
  • 切换到master分支并拉取远端最新代码:git checkout master && git pull origin master
  • 基于最新master创建第二个功能的专属分支并切换:git checkout -b 第二个功能分支名
  • 在新分支开发第二个功能,完成后执行git add 对应功能目录、git commit -m "提交说明"即可将改动绑定到当前分支
  • 需要恢复第一个功能开发时,先提交完第二个分支的改动(或执行git stash暂存第二个功能的未提交改动),切换回第一个功能分支:git checkout 第一个功能分支名,执行git stash pop即可恢复之前暂存的未完成改动,继续开发即可

方案2:提交临时改动(适合改动可留存的场景)

如果第一个功能的未完成改动允许提交临时版本,可以直接提交后再切换分支:

  • 在第一个功能分支执行git add 第一个功能对应目录,再执行git commit -m "feat: 功能1 开发中临时提交"
  • 后续创建第二个功能分支、开发的流程和方案1一致
  • 后续回到第一个功能分支开发完成后,可以用git commit --amend修改之前的临时提交信息,或者用git rebase -i合并多个临时提交,保持提交日志整洁

注意事项

由于你的两个功能改动在完全独立的目录,不存在文件级别的修改冲突,只要按上述流程将不同功能的改动分别绑定到对应分支,就不会出现跨分支混改的问题。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 13:06:03