我们有两个使用Django的开发人员。由于某些技术问题,我们尚未开始使用版本控制。两位开发人员对Django模型进行了一些更改。开发人员A进行了1次迁移,而开发人员B进行了5次迁移。他们俩都在两个不同的表中工作。如果两个迁移不使用版本控制,如何合并它们。
答案 0 :(得分:0)
可能迁移的前缀编号相同。
将原始名称保留在第一个,然后增加第二个。
例如:
Developer A: 0035_customer.py
Developer B: 0035_process.py -> rename to -> 0036_process.py
另外,在第二次迁移时更改dependencies
属性,以确保该属性将以正确的顺序运行。
答案 1 :(得分:0)
让我们假设您有两种不同的迁移方式,例如001_add_x
和002_add_y
,并且两者都已应用于数据库。
当您要合并它们并在合并的项目中创建像003_add_z
之类的新迁移时,应运行
python manage.py migrate <app> 001 --fake
和
python manage.py migrate <app> 002 --fake
然后您可以运行
python manage.py migrate <app>
或者您可以删除所有迁移文件并重新运行makemigration为所有模型创建迁移,然后可以运行migrate <app> --fake