In the past I have really enjoyed using Trac with subversion repositories hosted on some of my own servers. The integrated ticketing and online code browsing is very convenient.
I have used github for some of my public projects but I don't have the money to shell out for an extra service, espcially when I am already paying for remote VPS hosting.
Does anyone know of or have any experience setting up something like Trac with git version control? Specifically, I can already push to a remote server but I would like some web interface that allows me (and people working with me) to see that commits and current state of the codebase online without making the project public. I am aware of GitPlugin but have not been able to get it up and running successfully. Any other suggestions?
Integrated ticketing (and wiki) is desired but not an absolute necessity.
Edit:
After playing around with GitPlugin and Trac a bit more I have been able to get it up and running. The main problem was that I needed to explicitly enable the plugin for the trac environment by doing something like this in trac.ini:
[components]
# for version 0.10
gitplugin.* = enabled
# for version 0.11
tracext.git.* = enabled
I may also try out Redmine and CGit as this seem like other pieces of software that do what I am looking for. Any other suggestions are welcome.
You should take a look at Redmine (http://www.redmine.org/). It has all of the features you mention and more. You can host it on your own vps (I do).