Dan*_*nte 8 deployment version-control webserver web-development-server web
我对版本控制和部署环境有点新意,我对此事的了解已经停止:如果开发人员无法在同一台本地计算机上工作并且被迫始终工作,部署环境如何工作?一个远程服务器?
如何根据最佳实践设置部署环境的流程?
在本例中,我考虑了三种部署环境:开发,升级和生产 ; 和三个存储环境:本地,存储库服务器和最终服务器.
这是我提出的流程图,但我不知道它是否正确或如何正确实现它:
PS.我以为服务器上的暂存测试可以通过登录或ip检查限制访问,以防你想知道.
我可以给你(根据我的经验)一个好的和直接的实践,这不是唯一的方法,因为没有关于如何处理所有项目的唯一标准:
使用分布式版本控制系统(如 git/github):
本地发展:
master分支与分支合并shared folder位于主机和 VM 之间,因此,您将使用您喜欢的编辑器在主机操作系统上编写源代码,同时此代码存在并在您的 VM 中运行,位于是不是太棒了?!python我还强烈建议使用虚拟环境(如virtualenv或anaconda)来隔离和管理内部依赖项fabric)远程服务器:
部署流程:Local-Repo-Remote 服务器,它是如何工作的?:
fabric)部署:
5.1 如果您想将功能分支部署到测试或暂存:
ssh访问服务器,然后访问cd项目文件夹(手动或通过自动化脚本从 repo 克隆)git checkout <the branch used>git pull origin <the branch used>5.2 如果您想部署到生产环境:
pull request后拉入请求得到由经理验证,并用合并master分支ssh访问服务器,然后访问cd项目文件夹(手动或通过自动化脚本从 repo 克隆)git checkout master # 不需要,因为它应该总是在 master 上git pull origin master
这是一个稍微简化的方法,还有很多其他推荐的和最佳实践的工具和任务。