Para reiniciar completamente el historial de South hay que hacer lo siguiente:
python manage.py migrate appname --fake zero
Este comando borra todo el historial de South.
A continuación se tienen que borrar los ficheros.
rm appname/migrations/*
En este momento ya tenemos el historial de South completamente limpio por lo que es necesario crear las nuevas migraciones:
python manage.py schemamigration appname --initial
python manage.py migrate appname
Si solamente queremos borrar el historial hasta un lugar concreto, hay que hacer lo siguiente:
python manage.py migrate appname --fake MIGRATION_NUMBER
El atributo --fake, indica que solamente se borran las migraciones de la base de datos, no afecta a lo que contiene la base de datos, es decir, no se aplican los cambios.
A continuación hay que borrar todos los archivos posteriores a la migración desde la que queremos partir que se encuentran en :
appname/migrations
A continuación creamos una nueva migración para guardar los cambios que hay en la base de datos. Al haber hecho "python manage.py migrate appname --fake MIGRATION_NUMBER", simplemente se han borrado las migraciones de la base de datos pero no se han aplicado los cambios, ahora lo que nos indica South y lo que hay en la base de datos es diferente por lo que es necesario hacer una nueva migración:
python manage.py schemamigration appname --auto
El siguiente paso que debemos hacer, es aplicar la migración:
python manage.py migrate appname