I’ve been working with Basecamp at work for a few years now and it works very well. When I decided I should use something similar for some of my personal projects, it fit the bill. I also started using GitHub for my repositories, this was fine when it was in still in Beta and I had a private repository for free. After a few months of not committing code and painful deployments (no capistrano), I decided it was time to find an alternative to GitHub. I didn’t really feel like paying for a private repo.
After a quick search, I found Unfuddle and to my surprise, it had unlimited Private Repositories free. So I signed up. Now after using it and looking at all the features I’m thinking it can maybe be my all-in-one place to do all the project management for my own projects. It has messages and Milestones like Basecamp, it has git and subversion repos, and a wiki (well, notebooks, but they can be managed like a wiki) like GitHub. There is some things that Unfuddle is missing compared to Basecamp. First there is To-Dos, Unfuddle has Tickets which can be used as To-Dos, but with Basecamp I would have to find a way to manage tickets if there was ever a need for it.
Now the only issue with Unfuddle is that I can only have 2 users on the free account. Basecamp has unlimited users.
I’ll keep using Unfuddle for a bit longer as my project management tool to see if I can switch, but I’m pretty confident that I will use Unfuddle exclusively.

I also have been “Unfuddled” and it has made life so much easier! I just wish it had more project managment features so our management would also adopt it. One thing they have requested is Gant charts. Unfuddle said they won’t have them but will be offering some better charts in the future.
Now I am evaluating OpenAtrium (Drupal Based), FengOffice (OpenGoo) and Liquid Planner as a compliment to Unfuddle for better overall project management.