普遍的共识是,在迁移时,您应该将schema.rb签入版本控制。
What is the right approach to deal with Rails db/schema.rb file in GIT?
我的问题是--如果我的高级开发人员创建了一个迁移&检查schema.rb,我就把回购程序拉下来,在我的端进行迁移,它显示schema.rb已经改变了--我是否也提交了我的schema.rb版本并将其签入到版本控制中?
发布于 2014-04-28 03:34:52
理论上,在完成迁移之后,您的schema.rb应该与高级开发人员提交的相同。如果不是,那么有两件事发生了:
schema.rbschema.rb以一致的方式记录的(迁移有许多创造性的用途可能导致这种情况,更不用说bug了)。实际上,在高级开发人员运行迁移之后,您应该再次检查他们是否提交了schema.rb。如果有,您应该放弃对您的schema.rb版本所做的更改,以支持他们的版本。如果他们没有,那么您应该提交您的版本的schema.rb,有效地纠正他们的错误。
发布于 2017-07-10 09:29:10
是的,您应该签入您的版本的schema.rb。这将确保整个团队都在使用相同的版本。只要对架构有新的更改,就应该进行合并。您对更改数据库的项目的贡献仍然是对产品的贡献,因此需要签入。
合并的具体过程可能因团队而异。一些团队有一个QA团队来处理这些事情,另一些团队有一个部署团队来处理这些事情。然而,在这种情况下,沟通才是关键。尝试将您的高级开发人员保留在模式更改的循环中。
https://stackoverflow.com/questions/23018039
复制相似问题