我正试图在php项目中实现git流。我正在添加一个新功能。最后一个标签是1.1.0。
现在,我没有使用1.1.0版本(因为我正在添加一个新功能)。这意味着我不能在composer.json文件中更新版本。
当添加功能进行开发时,我应该更新版本吗?Lice 1.1——名字?
我应该只在发布分支内部更新版本吗?我认为时机已到。
看看Github上的Symfony。在编写时,master
分支使用:3.0-dev
https://github.com/symfony/symfony/blob/master/composer.json
现在来看标签2.7.6
。使用:2.7-dev
https://github.com/symfony/symfony/blob/v2.7.6/composer.json
最后,如果您查看所有列出的分支,您会注意到它们是以每个"major.minor"版本命名的。
他们使用的模式是将所有新功能添加到master分支,它始终是代码的"下一个"版本。所以你将把这个功能添加到一个"功能分支"中,在这个阶段你怎么称呼它并不重要,但你的composer文件会说:
"dev-master": "1.2-dev"
当您的功能完成后,您将把它合并到"master"中,它应该已经在composer文件中准备好了"1.2.0"。
现在,当您准备好发布1.2时,您将把它标记为1.2.0
,然后创建分支"1.2"并提交。
最后,您将把"master"上的composer文件更改为"1.3-dev"并提交。之后的所有新功能都将以"1.3.0"为目标
发布后
您需要维护1.2,因此您的修补程序将应用于1.2分支。但是,您也希望将这些修补程序应用于master,因此在master上使用git merge 1.2
。因此,您仍然在向master添加功能,但同时从以前的版本中提取补丁。