我正在开发一个大型RoR应用程序,它需要在多个分支中分割工作,每个分支都有不同的模式。
在分支之间切换时,有没有办法忽略架构更改?
添加.gitignore不是一个好方法,因为合并会失败。
如果你正在与很多分支机构合作,那么每个分支机构都有不同的数据库可能会很痛苦。
任何人对如何解决这个问题都有任何想法?
答案 0 :(得分:1)
如果您正在处理的不仅是添加新字段和表,而是进行主要架构更改,您可以添加和迁移功能分支的所有构造性更改,而不会破坏初始中定义的架构的表和列。科。然后,当测试更改并在功能分支上按预期工作时,您可以添加迁移以删除不需要的额外列和表。
或者,如果您习惯使用测试而不是在dev db中使用预设种子数据并在控制台中黑客攻击以查看代码是否有效,则可以在功能分支上添加所有迁移但仅迁移测试数据库bin/rake db:migrate RAILS_ENV=test
。但是,假设在合并您一直在进行的更改之前,您不需要在原始分支上运行测试套件。希望这能为您提供一些选择。