假设我的主分支 (devlop) 和功能分支都在积极开发。两者都在一次又一次地添加迁移。在将功能分支合并到主分支之前,我将把它变基到主分支上。
因此,只有在最近的开发分支迁移之后才进行所有功能分支迁移才有意义。
是否有一种方便/建议的方法来重命名这些文件?我可以生成虚拟迁移并重用为它们生成的时间戳——但我想知道是否有我不知道的最佳/常见做法?
假设我的主分支 (devlop) 和功能分支都在积极开发。两者都在一次又一次地添加迁移。在将功能分支合并到主分支之前,我将把它变基到主分支上。
因此,只有在最近的开发分支迁移之后才进行所有功能分支迁移才有意义。
是否有一种方便/建议的方法来重命名这些文件?我可以生成虚拟迁移并重用为它们生成的时间戳——但我想知道是否有我不知道的最佳/常见做法?
migration touch
我还没有找到一个 Rails 功能来为你做这件事,但是有一个命令或其他东西会很好。无论如何,我们这些天所做的只是生成一个新的迁移,复制时间戳并重命名旧的。通常迁移是独立的,顺序无关紧要,但有时我们会遇到顺序依赖关系,因此我们需要更新时间戳。
正如您对问题的评论中所述,无需更改文件名。
还提到,通常不会在其他迁移存在之前写入迁移,这取决于其他迁移。(如果是这样,你做的事情不对)。所以不应该出现这种需要。
在极少数情况下,功能开发人员希望合并多个迁移(在功能迁移之间存在主干迁移)(s)他应该将这些合并到一个新的(或最后一个)迁移中。在任何情况下,确保满足依赖关系是功能开发人员的责任。
这样做也可能会给其他开发人员带来一些烦人的副作用。由于 schema_migrations 中的时间戳不可用,相同的迁移将在他们的数据库上再次运行。