<p>How do you prepare your SQL deltas? do you manually save each schema-changing SQL to a delta folder, or do you have some kind of an automated diffing process?</p>

<p>I am interested in conventions for versioning database schema along with the source code. Perhaps a pre-commit hook that diffs the schema?</p>

<p>Also, what options for diffing deltas exist aside from <a href="http://dbdeploy.com/" rel="noreferrer">DbDeploy</a>?</p>

<p><strong>EDIT:</strong> seeing the answers I would like to clarify that I am familiar with the standard scheme for running a database migration using deltas. My question is about creating the deltas themselves, preferably automatically.</p>

<p>Also, the versioning is for PHP and MySQL if it makes a difference. (No Ruby solutions please).</p>

See
Is there a version control system for database structure changes?
How do I version my MS SQL database in SVN?
and Jeff's article
Get Your Database Under Version Control
I feel your pain, and I wish there were a better answer.  This might be closer to what you were looking for.
Mechanisms for tracking DB schema changes
Generally, I feel there is no adequate, accepted solution to this, and I roll my own in this area.