For version control, I use Git and Github. The workspace directory is the git directory, and I do my best to add all the Eclipse stuff and other nasties to .ignore.
Deployment is something I could definitely do better on. I tend to just build a jar when I need to deploy something.
Visual Studio is similar, replacing Workspace for Solution.
So, I'd like to hear what you think. I'm especially interested in the location of unit tests. Do you keep them in a separate project? Do you mix them in with your application source files? Do you have a main/src and a test/src folder in your application project.