Choose between the two ways of upgrading a SharePoint solution (.wsp)
Anyway, using a .wsp to deploy a solution, there is some points you need to pay attention to :
stsadm -o deploysolution ...
- With the stsadm instruction stsadm -o upgradesolution
- By retracting the solution, removing it, and redeploying it again.
What's the difference ?
Renaming your solution in order to make a .wsp versionning
The second way for instance allow you to rename your solution in the solution store in order to be able to make a versioning of your .wsp.
With the first way, you will have to keep always the same name for your solution in the solution store.
.wsp deployment and feature installation
Deploying a .wsp make all the features inside to be installed in the farm. Upgrading, not necessary so...
Asume you deploy a solution. Then you uninstall a feature that was deployed, thus installed with this deployment.
If you uninstall this feature, it will be NOT reinstalled when upgrading the solution with "upgradesolution" stsadm command.
However, it will be reinstalled when retracting the solution, removing it, and redeploying it.
Asume you have a solution that have deployed a site definition. If you make an other solution to make changes to this site definition and deploy it, the site definitions files will belong to the new soltuion. If you retract and remove this solution, all the site definition files will be removed from your farm !
So you will have to redeploy the first solution to recover your farm originale state.