You may also be interested in the Hibernate functionality that has recently been added to LiquiBase. See
http://www.liquibase.org/manal/hibernate.
The new feature allows a combination of hbm2ddl-like functionality along with the control you get over manual alter scripts.
Basically, there is now a LiquiBase command that will compare a hibernate mapping config and an existing database and automatically append the required changes (add table, add column, drop column etc). You can then simiply run the changelog file as it is or modify it as needed.
And since it is a standard LiquiBase change log file, you get all the other LiquiBase functionality such as the ability to tag and rollback changes, generate change documentation, and more.