The other day I needed to make a change to one of my features (added a new site template to my custom sites feature, and changed an existing one) which I had already deployed through a solution file. Now the farm environment was quite large and I did not really want to retract the solution, remove it, add it and then redeploy it again as this was very time consuming.
So this is what I did and it works like a charm (completely tested on my DEV environment before going to production):
- Made the change to the site template.
- Added the new site template to the solution file.
- Rebuilt the solution file (keeping the same solution ID)
- Ran the following stsadm command on the server to remove but not retract the solution from existing sites: stsadm -o deletesolution -name "CustomSiteTemplates.wsp" -override
- The -override command forces the removal of the solution from the solution store without retracting it.
- Ran the stsadm command to add the modified solution to the solution store.
- Redeployed the solution to the Farm.