Ruby on rails Rails迁移管理-最佳实践?

Ruby on rails Rails迁移管理-最佳实践?,ruby-on-rails,ruby,migration,Ruby On Rails,Ruby,Migration,迁移管理的最佳实践是什么 例如,调试迁移时,您是编辑原始迁移还是在提交到存储库之前添加编辑迁移?谢谢 我倾向于编辑原始迁移,只要它是a)最后一次迁移,b)不在源代码管理中。这为代码的所有其他使用者提供了一条干净的迁移路径。重要的是,您的迁移应该能够在最早遇到的任何数据库状态下无错误地运行。如果您与多个开发人员合作,编辑现有迁移可能是危险的 如果您的同事已经迁移了最初的迁移,那么当他更新时,他将不会选择新代码,接下来将是欢闹。这是一个很难追踪的问题。做一个好居民的错误,只是创建一个更新的迁移 只有

迁移管理的最佳实践是什么


例如,调试迁移时,您是编辑原始迁移还是在提交到存储库之前添加编辑迁移?谢谢

我倾向于编辑原始迁移,只要它是a)最后一次迁移,b)不在源代码管理中。这为代码的所有其他使用者提供了一条干净的迁移路径。重要的是,您的迁移应该能够在最早遇到的任何数据库状态下无错误地运行。

如果您与多个开发人员合作,编辑现有迁移可能是危险的


如果您的同事已经迁移了最初的迁移,那么当他更新时,他将不会选择新代码,接下来将是欢闹。这是一个很难追踪的问题。做一个好居民的错误,只是创建一个更新的迁移

只有在您可以验证其他开发人员或某些自动生成设置尚未运行现有迁移时,才可以编辑该迁移。为了安全起见,您不应该编辑提交的迁移文件,除非错误严重到无法运行迁移(在这种情况下,您为什么提交它?)


此外,还必须特别注意从应用程序中的其他位置调用代码的迁移,以便在运行迁移时使用正确版本的代码。否则,模型中的细微变化可能会导致早期迁移的失败。

即使在阅读了本文和下面的答案之后,我也学到了艰难的方法。不编辑原件。你最终会迷失你的发展过程,很难回到控制之下

开始测试迁移