I have a project I need to be working on from two different computers, at work and at home. I need to be able to work on the code from both computers, so the issue is two fold;
- Sharing the code
- Sharing the workspace.
1 is simple enough with svn; but I feel icky committing broken code to svn just so I can access that again from home. I can live with this but is there a better option?
To elaborate more on 2. I have a highly customized eclipse setup on one of the computers where I spent hours adding plugins and tweaking every tiny config options I could access to get it to the point where it is just right. It'll be a pain redoing every single change on the other computer, is there some way to automatically sync that? I know I can export preferences from Eclipse and import them, but I don't want to have to manually do that each time I change something. [Also, I don't think exporting preferences also exports perspectives?]
Both computers run windows.
Eclipse and most other java tools are easily portable.
You can copy the them to a thumb drive and run them on any machine. For the JDK it needs to have a similar OS.
I have a "C:\Development" folder with eclipse, java, jboss, workspace, ant, maven, svn, etc.. which I can unzip and drop in C: on any windows machine and run my environment.
I don't run it off the thumb drive because you never know which letter the drive will get and some of the references eclipse keeps are fully qualified.
I have just tried out the recently announced workspace mechanics plugin. It seems to be made exactly for the second part of the question.
You will need to provide a directory where the preferences are to be stored (by default
~/.eclipse/mechanic
). With the plugin installed, preferences can be easily exported to separate files. If you start a new workspace and point the plugin to the right directory (or leave the default), a dialog is displayed that lets you choose what settings to apply to the current workspace.To followup on this, i've been using Pulse with some success poweredbypulse.com. Its not the ideal solution but it's been working pretty well for me so far.
In regards to problem #1, I use Dropbox and have been very happy with it.
I did notice one problem opening a project after being updated on another machine: Eclipse picks up changes in existing files but does not automatically add new files. This is resolved by simply right clicking the project and selecting 'Refresh'.
Or simply Remote Desktop into your preferred computer from the other.
You might consider using Pulse. Its free and its great for generating a standard Eclipse installation that includs all your plugins and workspace settings (if you use the freelance version - not free). Its nice to be able to generate one working Eclipse configuration and then repeat that same profile installation on another computer OR share that profile with an entire team.