Managing the Sitecore Web.config file across development, test and production environments can be a major headache for source control and deployment. Do you store the version you need for development in source control? And since this version differs from what's needed to run the production website, it's difficult to use the publish option to deploy changes to the website.
Fortunately, Visual Studio 2010 has added some very nice functionality for managing different flavors of Web.Config, through the Web.Config transform feature of the Web Deployment project. This feature allows you to specify, and check into source control, the specific changes you need to make to change a development Web.Config into a test or production version.
Steve Green has a useful post outlining this feature.