<p>I know I can do most of this by hacking Trac and using Git hooks, but I was wondering if someone has / knows of something ready.</p>

<p>Commenting on (and closing) tickets from commit messages would be nice, specially if the diff appears inline with the comment/closing remark.</p>

<p>sha1 hashes should be auto-linked to gitweb/cigt/custom git browser.</p>

<p>I tried the GitPlugin for Trac, but the code browser was soo slow... any alternatives?</p>

Redmine
can do some of what you're asking for.  Integration works in one direction, you must
reference issues in commit messages
, and then this data will be available in redmine.
The data is then available in two views.  The bug display will include a list of matched commits.  The repository display will link commits to bug display pages.
Redmine keeps a local (bare) repository for each project.  This can be the primary repo or a remote mirror.  On updates, redmine parses the commit messages and updates an internal cross reference table of change_set,issue.
If the redmine repository is only used as a mirror, it will need to be updated.  Updates can happen via cron or via external hook.  We use a
redmine github plugin
and a github post-receive hook to keep redmine in sync with a primary github repository.
It works, but it is still a bit clumsy.