I am working on a big SharePoint project. We have 4 solutions with around 40 projects. So in my development environment, when ever I am deploying a modified project, I am not sure whether the newly deployed code is working or not. Sometimes the dll is new but while debugging I am able to see the existing code. For timer jobs we have an option to clear the cache. Is there any way to clear the cache or get a new dll properly every time to run.
I have a link that explains in full on the cashing and how to clear them, I use stsadm and sometime wspbuilder has that option too whats nice and easy when deploying or upgrading.
At my work we develop on VPC make it good and working then we test on dev server - then test on int server and then I would upload it to SVN as a working copy. From that anyone else can take it from SVN (obviously update ;) ) and do the same process :)
Also for webparts you can try WSPBuilder! its a good tool that builds and deploys wsp from Visual studios. You can even recycle AppPools and Recycle Services Timer.
I have experienced the same many number of times. Deactivating and then activating the feature refreshes the solution. You can use the powershell command to deactivate/activate the feature.
Disable-SPFeature –Identity Featurefoldername –url http://yoursite
Enable-SPFeature –Identity Featurefoldername –url http://yoursite