无需切换至master分支,能否将当前工作分支合并到master?
不用切分支就能让master追平feature-branch的方法
当然可以,直接在feature-branch分支上操作就行,完全不用切换到master中断当前工作,就能让master同步你当前分支的状态,具体有两种常用方式:
方式1:直接对齐提交指针(快进同步)
如果master当前的最后提交是feature-branch的祖先(也就是没有冲突、能快进合并的情况),跑下面这条命令就能让master直接指向feature-branch的当前提交:
git branch -f master feature-branch
这条命令会强制更新master的分支指针,全程不会切换分支,你在feature-branch上的工作状态一点不受影响。
方式2:生成合并提交(保留合并历史)
要是你需要明确记录这次合并操作(哪怕是能快进的场景),可以用本地推送的方式完成合并:
git push . feature-branch:master
执行后,master会合并feature-branch的所有提交,还会生成一条合并记录(非快进场景下),同样不用切换分支。
验证结果
之后你执行git checkout master时,feature-branch上的新功能肯定已经同步到master分支了。
要是远程master也需要同步,后面要么切到master再跑git push origin master,要么直接在feature-branch分支上跑git push origin feature-branch:master就行。
内容的提问来源于stack exchange,提问作者o01
相关产品推荐
相关产品推荐

