在我的项目中,我们有一个分支模型,它有一个单独的开发分支,每个版本都有一个单独的分支。它可能看起来像这样:
dev ______ ______
/ \ / \
master --+---+----+---+---+----+----+--- (...)
r1 \______/ r2 \_______/
所以我们开发dev将它合并到master,然后我们创建一个release分支(r1,r2,...)。
我们希望使用EF 6(手动非自动)迁移,但我们有一个问题,我们不知道如何回答。
想象一下:
dev _(1)__ ____(4)
/ \ / \
master --+---+----+---+---+----+-(5)*-+--- (...)
r1 \_(2)__/ r2 \(3)______/
每个号码都是迁移。它们已被添加到每个分支的源代码控制中并已应用于我们项目的生产实例的数据库(我们支持多个版本一段时间仅用于修复)因此我们无法降级它们,它们只能进入Up()。星号标志着我们想要分析的时间点。我们希望迁移以这种方式工作:
此外:
能做到吗?如果是,怎么样?
如果您需要更多详情,请询问。
答案 0 :(得分:13)
我可以试着解释一下你在每种情况下可以做些什么,但它相当复杂,我不能解释它,以及它在这里解释:
Code First Migrations in Team Environments
虽然情况复杂,但您必须经常参考此文档来合并分支机构,如果您按照本文档进行操作,则会发现它会解决您的所有问题。
免责声明:我知道SO应该是自包含的,但解释是如此复杂和漫长,我甚至无法在这里添加摘要。我希望链接的MSDN文档不会消失。