version control for one-man project using eclipse?

FloE picture FloE · Jun 23, 2010 · Viewed 11.4k times · Source

I'm currently working on several projects on my own (at least the developing part is done only by me :). Using Eclipse with different Java, R, SQL and other source files I'm wondering what version control system would be best for me.

At the time the history of Eclipse IDE seems to be enough, but I'm not sure if this will be true in a month/year...

What solution would you recommend and why?

To be more precise: I'm quite sure to use SVN or git if I decide to use a full version control system. But I'm just not sure if it is necessary...

small update: has the release of Eclipse Helios added new opinions?

Answer

Hank Gay picture Hank Gay · Jun 23, 2010

I'd recommend pretty much any of the distributed version control systems. I've used git and hg in anger, and poked at fossil (I include it because it offers some features that git and hg lack). I'll break down the major pros and cons in my eyes (NOTE: if they all have the same advantage I'm not going to mention it, e.g., they're all fast and lightweight):

  • git
    • Pros
      • Very flexible
      • GitHub
    • Cons
      • Steep learning curve
      • More flexible
      • Eclipse integration was lame the last time I looked
  • hg
    • Pros
      • (IMO) more consistent commands
      • Less flexible
      • BitBucket
    • Cons
      • Less flexible
      • Doesn't have quite as much momentum as git
    • Caveats
      • I haven't checked on Eclipse support lately; it used to be better than git's, but seemed rather stagnant
  • fossil (disclaimer: I haven't used this one in anger)
    • Pros
      • Written by the man behind SQLite, so you can be fairly sure it's SOLID code
      • Provides more than just version control, e.g., a distributed bug tracker
      • Easy to set up for others to access
    • Cons
      • Not nearly as much momentum as git or hg
      • I'm pretty sure Eclipse integration for fossil is non-existent (it was the last time I looked)
      • No free hosting that I know of to parallel GitHub or BitBucket, so you actually have to host your repo yourself

There are other DVCSs out there, notably including darcs and bzr, but I've not used them enough to have a worthwhile opinion on them.