I'm not sure If any of you have encountered this scenario.We have small small projects or
fixes that we need to push to LIVE every other day.
There is one set of team that says "do a clean build and deploy on prod server".
The other set says we don't have to do a full deploy we will just do a dll drop or aspx drop.
They have listed out few pros and cons for each method. But want to know what method you generally follow any major set backs for each method.
I would first of all try to minimize the cost of building a new release by trying to automate as much as possible. (Which might be easier said than done but it is usually well invested time and money, especially if you release often.)
The big issue I have with dropping in new binaries is that it is often a manual process and those are performed by humans who tend to mess up the easies tasks over and over again.
Aren’t you really looking for a “patch management system” that could help you distribute the changes in a controlled manner and getting rid of the manual work?
That way you still would have pretty good integrity since the patches should be versioned and hopefully carefully tested. But still they can be developed and deployed which much less overhead then a full release.
For sites under my control, I use SVN or Git for revision control, and update the source and compile on the server directly, if necessary. That ensures the integrity of the release, which I suspect is the argument put forth by the "do a clean build and deploy on prod server" team. For servers not under my control, I do whatever I am told :)