I agree with Michael that RedGate's SQL Compare is a fine product, we use it for the very same purpose you're looking for where I work. I've also worked with another good product called SQL Examiner:
http://www.sqlaccessories.com/
Both of those tools will do a compare and produce a script for you of the changes to apply to the database.
If you need a cheaper solution, there's SQL Accord, (recently recommended in the article free DBA tools part 2) which does have a free community edition that doesn't produce scripts for you but still has a very nice user interface to find all the differences: