【问题标题】:Database Migrations in multiple Mercurial branches多个 Mercurial 分支中的数据库迁移
【发布时间】:2011-01-27 19:07:26
【问题描述】:
我想向 Mercurial 存储库的主分支添加一个数据库迁移(我正在使用 PHP Ruckusing),并且我在一个侧分支(不是主分支的一部分)中创建了另一个迁移。由于两个迁移的编号相同(411_AddSomething.php、411_AddSomethingElse.php),会不会有什么问题?
我有在生产服务器上自动运行迁移的钩子,当前分支的迁移被忽略。我担心当我最终合并分支时,数字会出现问题。
谢谢!
【问题讨论】:
标签:
mercurial
migration
branch
【解决方案1】:
只要完整的文件名不同,Mercurial 不会介意。
至于 Ruckusing,appears 按文件名按词法顺序考虑迁移,如果您期望 411_AddSomething.php 在 411_AddSomethingElse.php 之前运行,这可能会导致令人惊讶的结果。 Ruckusing 的Newer versions 使用完整的时间戳而不是序列整数作为文件名,从而降低了这种冲突的可能性。
即便如此,即使您的源代码控制系统报告了干净的合并,两个开发人员仍然可以编写相互干扰的单独迁移。