Ruby on rails 修改迁移是否可以接受
我参加了一个rails项目,该项目已经进行了两个月。我看到开发人员正在修改现有迁移以更改列类型/名称?当我运行迁移时,什么都没有发生,我会得到随机错误,比如,methodnotfound。当我检查数据库时,发现字段名不同,这就是出现错误的原因 根据我对数据库每次修改的理解,我们需要创建新的迁移Ruby on rails 修改迁移是否可以接受,ruby-on-rails,Ruby On Rails,我参加了一个rails项目,该项目已经进行了两个月。我看到开发人员正在修改现有迁移以更改列类型/名称?当我运行迁移时,什么都没有发生,我会得到随机错误,比如,methodnotfound。当我检查数据库时,发现字段名不同,这就是出现错误的原因 根据我对数据库每次修改的理解,我们需要创建新的迁移 这种修改现有迁移的行为可以接受吗?通常,一旦签入迁移,就不应该修改它。对于我参与的一个项目,我们定期重置数据库,因此人们会不时修改迁移,而不是创建新的迁移,但这不是我喜欢的做法 因此,如果您希望默认的Ra
这种修改现有迁移的行为可以接受吗?通常,一旦签入迁移,就不应该修改它。对于我参与的一个项目,我们定期重置数据库,因此人们会不时修改迁移,而不是创建新的迁移,但这不是我喜欢的做法
因此,如果您希望默认的Rails迁移行为正常工作,不,不要更改可能有人已经使用过的迁移。但是,如果您对默认行为的处理没有意见,那也没关系。注意:如果要在生产环境中运行迁移以使数据库保持最新状态,请务必不要更改已在生产环境中运行的迁移 都是关于好的风格。当然,您可以更改迁移,但这种方式不好。根据指南,您应该为每次更改进行新迁移。在我看来,这是不可接受的。以下是一些可以接受或不接受的原因:
- 我只为自己开发2个rails应用程序,我是唯一的开发人员。当我在迁移中出错时,我有时只是修复它,回滚迁移,并在修复错误后重新进行迁移。这只是因为
- 我知道我是唯一的一个
- 我在错误的改变之后马上做
- 我知道如何以及何时首先回滚,然后重新执行
- 在所有其他情况下,不可接受:
- 不止一个开发者
- 集成的版本控制系统,如Subversion,Git
- 在不同的房间甚至地点进行独立开发