@wang9563
2017-05-22T19:48:28.000000Z
字数 1051
阅读 1338
为了更有效的管理代码,我设想将项目拆分开,通过插件化的方式来实现功能模块。并通过 SVN 实现对代码的权限化的管理。公共组件需要大家一起讨论,维护,以便于加快开发效率,提升性能、稳定性等。
不过,以下流程仅限讨论后端服务的开发方式为主,前端不在考虑范围内。
Plug 存放项目插件;Release 存放编译后的程序集;WMS1.0 存放主项目
选择 松鼠ERP插件模块 模板,并设置项目的位置为 SS_WMS\Plug
将自动引用基础的类库
现在需要开发一个测试插件
using SongshuERP.Mvc.Core;
namespace SongshuERP.Mvc.Areas.TestPlug
{
public class FirstPlugController : BaseController
{
public string Index()
{
return "这是通过 MVC 插件实现的!";
}
}
}
此处的命名空间都是自动生成的,至于要编写 FirstPlugController 类即可,现在可以访问 Url http://host:port/testplug/firstplug/index 检查插件是否能正常运行!
确保代码可以正常使用后,可以提交代码到服务器,通过 SVN 按目录提交即可
人工在服务器上或自己的工作电脑上通过 SVN 获取最新的源码,并整体编译,再发布到测试环境
当然如果有一项编译失败,则不建议发布,需要负责该功能代码的同事检查不能正常编辑的原因 当然不能成功编译的代码我们也不会提交
6、尝试自动构建、发布
完善编译工具,增加自动发布的功能,定时去获取源码、编译、发布 本地发布/FTP/WebDeploy
7、尝试构建 docker 镜像,推送部署,实现自动更新
编译服务定时将编译后的文件打包成 Docker 镜像,并通过 swarm 推送实现自动更新
编写 YAML 实现流程化集群部署
建议通过 Resharper 插件进行控制,编写不合法的代码时会有提示。