之前写 git 文档的时候有说到过要开发一个新功能,从开发分支切出进行开发,开发完合并回开发分支。但是在工作中,基本是自己一个人开发的项目,为了省事,经常会直接在开发分支上修复 bug,最近就发现了这样是有问题的。

问题大概过程是我切了一个分支去配合后端 api 改造,修改完之后,合到了测试分支,供测试。一段时间之后,后端正式环境还没有更新 api,我也就一直没有发布到正式环境,这时候测试版发现了一些 bug,于是顺手在测试分支上改了,又过了一些天,又改了写 bug,这时候需要把这些 bug 修复更新到正式环境,就出现问题了,更到正式环境如何保证不更 api 改造相关内容,只更 bug 修复部分呢?若是一个两个 commit 还好,cherry-pick,但是我是修复了一批 bug,修复一个 bug 就一个 commit,这么更万一更错了呢。所以这提醒我以后要合并改动到测试分支之前,先要确定是不是这部分可以上了,免得日后出现这种问题,或者开一个预发布分支,把确定可以发布的内容发到预发布分支。