我目前正在使用GIT和源码树来管理我的php web系统的源码控制。
我之前使用GIT的经验是在一个非基于web的环境中,因为我了解分支和远程等的使用。
但是当涉及到web开发的设置时,我有点困惑。
场景。
我有一个活动的子域
live.mysite.com
我有一个dev子域
dev.mysite.com
我在dev站点上为故事创建了分支。工作人员从开发网站上检出故事分支,完成并提交。然后,每个故事都由测试人员签出并进行测试,一旦完成,故事就会合并到开发主控中,并最终将开发与live合并。
这是一个非常广泛的概述,我对这些领域感到困惑。假设我有10名员工。他们将需要查看这些更改,因为他们对任何开发都是如此。使用上面的方法是行不通的,因为所有的员工都会被部署到开发站点。
为了解决这个问题,我已经为每个工作人员创建了一个子域。
rob.mysite.com
dave.mysite.com
现在,每个员工都可以在自己的域上独立工作,并在需要时推送到不同的远程。i.e
在rob.mysite.com上进行更改,推送rob到开发,推送开发到live等
虽然这种工作,我觉得它是不正确的。
它几乎打破了分支的全部要点,因为所有员工都将从自己的存储库进行分支。
这是正确的吗?我只是少走了几步,还是我完全错了?
发布于 2018-06-03 07:55:20
首先,听起来员工需要一个本地的开发环境。开发人员应该不需要推送任何更改来测试它们。这大大减慢了开发速度。
常见的工作流程可能如下所示:
时将更改推送到feature分支的远程副本的branch.
主开发检查您的更改是否在本地开发环境中起作用,并运行测试。如果测试是绿色的,请将主开发/开发branch.
您可能已经注意到,这与您的方法没有太大不同。您将在一个单独的暂存环境中完成所有更改。然而,这是一件好事。你会认识到功能之间的不兼容性,而不是在live中。
我建议学习更多关于Continuous Integration和Continuous Delivery的知识。
https://stackoverflow.com/questions/50661615
复制相似问题