views:

430

answers:

9

I am planning to bring some "peace" (you may call it organization) to the personal work (small projects, etc.) I do at home.

I would like to use a SCM and an issue tracker which can capture the commits and show them as changesets etc. automatically.

Note that all the above softwares are supposed to be for personal usage so would prefer something from FOSS and also they need to be ultra lightweight in terms of the system requirements.

What do you recommend?

EDIT: Following are some of my doubts/concerns:

  1. Git with GitHub looks good. But I am not very comfortable with making my code base public on GitHub. What do you say?
  2. Does GitHub provides Issue tracker? I mean, can I open up an issue on GitHub provided issue tracker and commit against that issue?
  3. Can I have a local SCM (on my laptop) and use some remote issue tracker like FogBugz? But I just don't understand how would a remote issue tracker will capture my commits. Any idea?

UPDATE:

I finally went with Mercurial and BitBucket. Working awesome so far!

+3  A: 

I would recommend Git with GitHub

Huppie
I'm not sure that GitHub provides an integrated issue tracker. Do you use any issue trackers that integrate well with Git?
jkndrkn
Does have an issue tracker now.
Tchalvak
A: 

I like and use redmine with the basecamp theme. It supports a couple version control systems, git, mercurial, svn, ...

For projects I like to publish I then use bitbucket.org and github.com.

I never tried, but would look into git in combination with ticgit ..

The MYYN
A: 

In the past, I've used CVS for source control, but I've recently started converting most of my personal projects to use git. However, I don't like the way git works with Visual Studio, so I've been switching to Subversion for my C# projects.

For issue tracking, I've been using Redmine which supports all three SCM methods, though it does better with SVN and git.

Jason
A: 

If you can trust that you'll always be working on your personal projects near your source control server (or if you're doing it all on the same box) then I'd suggest Subversion. I feel the barrier for entry is lower for it than distributed tools like git or mercurial.

I'd look into VisualSVN for your server. If you're running it all on one box, you can use TortoiseSVN's built-in Repo feature.

My favorite clients are TortoiseSVN and AnkhSVN (if you need VS integration.)

For an issue tracker, a simple story board might be better than a piece of software.

antik
The difference between developing agile-ly in a distributed source control and on svn are like night and day, so -1 for non-distributed svn. As an alternative, I suggest at least starting off trying mercurial and tortoiseHg instead.
Tchalvak
@Tchalvak - That is a weighty opinion, and one you're quite entitled to: no problems there but I feel you're missing the intent of the voting system by down voting answers which you disagree with when there is nothing factually inaccurate in the post. Furthermore, I address your distributed SCM point head on by suggesting the lower entry barrier may be desirable in this "small scale" environment.
antik
A: 

Lightweight issue tracking, well, you could use the tracker in drupal, if you consider LAMP easy enough to set up.

If you want to be self-contained, git and mercurial are things you can use without setting up a server at all.

Of course, there's good-old-RCS.

bmargulies
+2  A: 

If you're going free personal, I'd recommend SVN and Trac. The two integrate very well together with a little bit of configuration. They're also both pretty lightweight.

If you're willing to spend a bit or are working on an open source project, I'd recommend Atlassian's tools Jira and FishEye. I've worked with them as well and have found integration to be very good. They can be a bit hefty though, and I've found the FishEye client to be very AJAX heavy to the point of performance issues.

tschaible
Non-distributedd source control, you would miss soo, soo much. Better to start distributed.
Tchalvak
+1  A: 

I use org-mode in emacs to track personal projects.

I've used various SCMs for personal work. For really small stuff I still sometimes just run ci -l somefile to start versioning with RCS, because I'm old-school that way. I've happily used Darcs for personal stuff, and I maintain that Darcs is still the easiest to use DVCS out there. These days if I think I'm going to be Open-Sourcing the project I'm likely to use Git, just because that makes putting it on GitHub straightforward.

I also like to use personal projects as an opportunity to experiment with other SCMs that I'm not familiar with, so I'll probably be versioning projects with Bazaar and Mercurial in the future.

Avdi
Tchalvak
A: 

I would have to second using the Subversion and Trac combination. I have this environment setup at work and use it for a distributed team of developers, and I have this environment setup at home and use it for my personal projects. They are open source, very adaptable to your workflow and Trac Hacks has pretty much any mod / hack / plugin you could think of in one form or another.

Matt Simpson
A: 

For very personal things (let's say single-user-mode) I use Tomboy (a simple note-taking application) and Getting Things Gnome. If the project becomes more complex, then I used to switch to Trac with svn or hg backend. For next projects, I'm going to try redmine: seems more clean and hipe than trac (:))

the brx in the walls