The most straight forward approach is to track all your changes in a script. Then, when the time comes, you can apply the script to your production databases.
There is a commercial product called ERWin (which was owned by Platinum but has since been sold to Computer Associates). ERWin has a neat feature where it is able to reverse-engineer a model from your physical database. It also compare it's model against a database and point out the differences, offering the option make the physical databaes look like the model.
-Mike