我是一个在我工作的公司工作的单人乐队。我开发了一个Rails应用程序供公司内部使用。自项目开始以来,我使用SVN进行源代码管理,并完成了大部分(但不是全部)的主干开发。有时候,当我做出非常重大的改变时,我已经分支并且在完成时将改变合并回来。非常典型。管理同一台机器上不同分支机构的Rails迁移
但是,我所做的那些“重大变化”都没有涉及到数据库迁移。他们一直是视图/控制器的东西。
在这种情况下,如果使用一个开发框,我该如何处理迁移和各种数据库更改(我可能会或可能不会保留)?我不想记住在我将分支丢失之前将所有的迁移恢复回分支的开始。
我已经考虑建立特殊的开发环境和数据库(app_branch
而不是app_development
),但似乎强烈反对实验开发往往依赖的“简单分支”的概念。
这种情况是否有最佳做法?在这种情况下,其他人在做什么?
伟大的问题。如果你不介意你的开发数据库一直都是空的(也许某些开发种子数据可能是按顺序的),那么你可以检出新的分支并运行'rake db:schema:load',这会摧毁开发并重建它来自当前的'db/schema.rb'。 – 2010-06-05 04:17:29