title: How is one supposed to recover from a failed migration in South?
body: <p>I'm using <a href="http://south.aeracode.org/" rel="nofollow">South</a> (version 0.6, the one packaged in Ubuntu Lucid Lynx) to manage database migrations in Django, and currently using SQLite as a back end.  I came across a situation where I generated a migration to add a column with:</p>
  
  <pre><code>./manage.py startmigration myapp --auto added_new_column
  </code></pre>
  
  <p>... which generated a migration that looked sensible.  However, when I then applied the migration with:</p>
  
  <pre><code>./manage.py migrate myapp
  </code></pre>
  
  <p>I got an error because the column I was adding was non-NULL, but I hadn't specified a default value:</p>
  
  <pre><code>ValueError: You cannot add a null=False column without a default value.
  </code></pre>
  
  <p>What is one supposed to do if a migration fails in this way, and you want to go back and regenerate it?  (What I did in practice, namely to delete the migration and generate a new one, has created several further problems.)  Perhaps I've missed something obvious in the documentation about this...</p>