我们有一个人(我们叫他Ted)负责测试新功能和错误修复。
我们正在使用Git和GitHub。master
应该/始终可以部署,并且development
是我们提交/合并新功能或错误修复的地方,但前提是经过Ted测试之后。
该项目使用PHP。
我希望测试过程如下:
- 开发人员想要开发新功能(例如,问题跟踪程序中Ted记录的功能/错误#123),因此他
origin/development
进入development
了自己的本地存储库,并issue-123
从那里创建了一个新分支(比如)。 - 对工作感到满意后,他承诺并将其新分支推至
origin
。 - Ted连接到
test.ourproject.com/choose-branch
并看到分支上的列表,origin
然后选择打开issue-123
(应该可以通过网页进行操作)。然后test.ourproject.com
,他继续进行测试,在Web应用程序之外进行测试(他真的很无情),在与开发人员反复交流之后,他对该功能感到满意。 - 特德告诉他可以合并开发
issue-123
到development
上origin
。 - 冲洗并重复。
第三步,我可以破解一些可以完成工作的东西(显示和切换特定页面上的分支),但是我觉得我所描述的是非常普遍的模式。
所以我的问题是: 这是分支的良好/可持续/可维护的工作流程吗?您是否可以通过引用此工作流程中其他项目的一些示例来备份您的答案?
issue-123
指出该错误/功能#123,因为Ted在我们的问题跟踪器上记录了每个错误/新功能。