Search code examples
djangodjango-southdjango-migrations

Django's Core Migrate Tool vs South for Django Data Migrations


I'm not currently using migrations in my Django project but I intend to very soon. I understand that South is the de facto tool, and I was going to use that but then I read on the Django project site that the development version (I guess to be released as 1.7) has a core migration tool, ran as migrate.

Coming from very little experience using migration tools (I installed Django-CMS with South and played around with it for a day or so), which is the best one for a beginner?

Also, since migration itself is pretty young, and Django's version even more so, would I be better off going with South this point?

Finally, another question is if I start with South (most of my Django projects are v1.5), when I upgrade to 1.6 and then 1.7, will I have trouble converting to Django's core migration?


Solution

  • Its easy to drop South migration history and initialize any other kind of migration tool.

    Django core migrations are based on South, so I guess it will be possible to export South migration history to Django core migrations.

    Since Django core migrations are not released yet, and your purpose is to learn, I suggest starting with South.