Git分支与部署架构

目录

一般来说,利用git进行多人协作的网站开发项目都有不止一个分支,其中每一个分支对应于网站部署的一个架构。虽然网站部署架构千差万别,但几乎都是从开发环境(DEV)开始并以生产环境(PROD)结束,所以对应到git分支上就是 开发分支,测试分支,缓存分支和生产分支。

开发分支 DEV

开发分支是本地开发环境上用于开发新功能的分支,开发人员可以方便的在本地进行单元测试

测试分支 TEST

测试分支对应于测试环境,新功能开发完毕并在本地环境通过单元测试后,开发分支才可以合并到测试分支中,之后将测试分支部署到测试环境中进行集成测试

缓冲分支 STAGING

缓冲分支对应于缓冲环境,它是是生产环境的镜像,拥有和生产环境一样的硬件,软件环境,所以在这里可以进行和生产环境一样的测试(性能测试,负载测试等)。当新功能在测试环境通过集成测试后,开发分支才可以合并到缓冲分支中,之后将缓存分支部署到缓冲环境里进行和生产环境一样的测试

生产分支 PROD

生产分支对应于生产环境,生产环境也就是用户可以直接交互的环境。我们访问的网站,其实都是部署在生产环境里的。新功能在缓存分支通过测试后,含有新功能的开发分支最后并入生产分支中,生产分支被部署到生产环境里,新功能此时也最终被交付到了用户手中。

一般来说,含有新功能的分支按顺序合并到测试分支,缓存分支和生产分支中,包含新功能的测试分支,缓存分支和生产分支也按顺序被部署到测试环境,缓存环境和生产环境中。一个网站的新功能就是这样经历重重测试,最终交付到用户手中哒。

想要知道更多有关部署架构知识,请参考Wiki部署环境