eftpotrm
eftpotrm

Reputation: 2281

Source control options for personal projects

This may prove OTT for the level of usage it'd get, but....

I'm working on some personal projects in Visual Studio Express at home. I've got a big desktop replacement laptop and a little ultraportable, both of which have been used quite happily for development, and a spare XP Home box running as a de facto home server.

I'd like to be able to run these projects through source control of some description, but these are personal projects for me - there's a limit to just how much work I'm prepared to dedicate to the source control over just keeping a folder full of dated zips on the server. I've previously used Visual SourceSafe which I know isn't perfect but it was inflicted on me and worked well enough for us, and IntaSoft AllChange.

IDE integration isn't an issue because as I understand that isn't possible with VS Express anyway. There'll only be one developer, me, and not huge numbers of versions flying around, so lots of sophistication on branching and merging isn't really needed.

Can anyone recommend something that'll provide me benefit greater than the hassle to set up and operate? Thanks :-)

Upvotes: 0

Views: 820

Answers (8)

PtrFdr
PtrFdr

Reputation: 138

Fossil is a single stand-alone executable less than 1 MB!

http://www.fossil-scm.org/

It's simple, easy to set up. However not so popular (yet).

Other features:

  • Bug Tracking and Wiki
  • Web Interface
  • The repository is stored in a single-file SQLite database

Upvotes: 1

cape1232
cape1232

Reputation: 1009

Here's all it takes to set up a repository using mercurial, aside from install mercurial itself.

~/test$ mkdir mycode
~/test$ hg init mycode
~/test$ cd mycode/
~/test/mycode$ mkdir module1
~/test/mycode$ mkdir module2
~/test/mycode$ hg add module1 module2
~/test/mycode$ cd ..
~/test$ hg clone mycode mycode-dev
updating working directory
0 files updated, 0 files merged, 0 files removed, 0 files unresolved

You could set up your (empty) repository on your server, and then push and pull from your dev machine. If you want to work on another computer all you do is a clone similar to the one above:

  • if you've mounted your server, just use the path of the repository.
  • you can also easily clone your repository using ssh, like this.

    hg clone ssh://[email protected]//home/path/to/mycode ./mycode

Viola!

Upvotes: 0

Amadan
Amadan

Reputation: 198526

Of all VCS that I have used, git was easiest to understand, and it has many benefits. It works perfectly fine even in single-user paradigm. Although I'm a fan of command line, you can take a look through this link and this link to see it used on Windows, with GUI.

Upvotes: 0

Andrew
Andrew

Reputation: 121

I'd recommend Mercurial, a powerful distributed VCS.

Upvotes: 2

Jaime
Jaime

Reputation: 6814

I use Git for my personal use, even tough it is a "Distributed" source control system, for me it has allowed for very nice workflows on my local machine and syncing with my other machines (home x 2, etc) very nicely through github or directly to my home server.

For example, for personal projects I end up working on different features and/or bug-fixes at the same time and git's painless branching/merging allows me to switch between features, merge back and keep all organized very seamlessly.

Also very easy to setup.

At work we use SubVersion, and I still use git on my local machine to manage my coding workflow and then commit to svn repo

Upvotes: 4

EboMike
EboMike

Reputation: 77762

Perforce (http://www.perforce.com) is also a fantastic source control package that many companies use. They have a free version that is fully usable with two users and five clients. It's really professional-grade stuff.

Other than that, SVN is very popular and has plug-ins for every IDE known to man. CVS is getting a bit stale. SourceSafe should not be mentioned in polite conversation :)

GIT is also becoming increasingly popular, although personally I feel it is a bit too heavy-handed for small personal projects.

Upvotes: 0

David Young
David Young

Reputation: 4743

You could still use Subversion with TortoiseSVN and just have a local Subversion file repository. This does not require setting up a subversion server but instead is hosted locally through the file system and still has all the benefits of subversion.

Here's a tutorial

http://vincenthomedev.wordpress.com/2007/10/15/setup-svn-local-repository-step-by-step/

Upvotes: 0

peter_mcc
peter_mcc

Reputation: 836

SVN is pretty easy to set up and use. You can download an installer for the server from VisualSVN TortiseSVN is a Windows Explorer add-in which will let you check files in/out/etc. You can get it here

Upvotes: 0

Related Questions