Here's what I do. I right click on the project in VS. Choose WSP Builder and then Create Deployment Folder (I think that's what it's called from memory). That will generate a subfolder of bin which contains a whole bunch of deployment files including
3 batch files for deployment. One of them is called deploywithstsadm.bat. I copy that one up to the top level (the same level as the project file) and add it to the project so that it also gets added in to source control (if you are using that). Then I
edit the stsadm commands in there to do the deployment as I wish (e.g. add a target url rather than -allcontenturls, activate the feature via stsadm if you want to).
You could also do the same thing with the batch file that uses wspbuilder to do the deployment (that file is also created for you) but I personally prefer to use stsadm because it's the standard admin tool and I guess any issues with it will be fixed by
SharePoint upgrades and service packs.
Either way you have a single custom batch file in your project that you just run from the command line and it will deploy the solution for you. For dev purposes I still use GACUTIL to register the DLL in the GAC and recyle the app pool - for the development
cycle that is faster than re-deploying the solution every time. But it's always worth re-building and re-deploying the WSP solution properly every so often (just to make sure that you still can).