我需要一些建议如何设置我的开发过程,以便我可以轻松地开发和部署我的应用程序的测试版和生产版。
我项目的当前状态:
我想拥有什么:
我的计划是将现有的存储库克隆到一个新存储库(例如从App到App-Test),所以我最终会得到两个独立的代码库。然后,将在App-Test应用程序中实现和发布新功能。当用户对测试版本感到满意时,我会以某种方式将更改从App-Test存储库移动到App存储库(可能使用Mercurial的merge命令),然后发布生产应用程序......
这是实现这一目标的正确方法吗?某些资源的任何其他建议或链接?这可以在同一个存储库中以某种方式完成吗?
答案 0 :(得分:1)
这可能是一个存储库,但有两个(或更多)早午餐。例如,我们使用git进行源代码控制和3次早午餐 - 开发,测试,发布。特色(或任务)在开发早午餐中开始了他们的生活。然后他们在测试中移动(合并),并在测试移动后释放。
但是你可能会遇到数据库更改的问题(你使用了一些ORM吗?),因为你需要拥有2个不同的数据库。如果您不使用某些ORM,合并数据库可能会很困难。但我认为,例如,实体框架(代码优先)节省了你的时间。
祝你好运!答案 1 :(得分:1)
两个独立的环境 - 一个用于生产应用,一个用于 测试应用程序,它与生产应用程序相同但是 添加功能,可能会或可能不会添加到主要功能 应用
单个分支上面有MQ,“生产”应用程序是所有变更集,“测试”是“生产”+应用MQ补丁(每个开发特征一个补丁)
我想用Click-Once发布这两个应用程序(例如 App和AppTest)
我对Click-Once,out of ideas
一无所知我想有一个选项,只需从Test中“移动”更改 应用于主应用程序,或简单地丢弃它们。
完成MQ-patches转换为永久变更集,只需删除过时的补丁