According to the documentation, it is just a shortcut, to save typing.
If you check your migrations
directory, you would see a python file called: 0001_migration_name.py
. South simply provides you a way to run the migration by specifying only digits, a prefix of the migration name.
Note that if you would run ./manage.py migrate myapp 000
while having several migrations, e.g.:
0001_initial_migration
0002_add_username
you would receive an error, since south
would not identify a single unique migration by the prefix you've provided.
FYI, here is the source code of guess_migration()
, that tries to match the migration by prefix.