The cause of this issue is hidden until you disable the catching of it which masks it into the error message you see in the summary.
After disabling this try-catch block, you see the real cause:
Traceback (most recent call last):
File "/usr/lib/python2.6/site-packages/trac/web/main.py", line 432, in _dispatch_request
dispatcher.dispatch(req)
File "/usr/lib/python2.6/site-packages/trac/web/main.py", line 174, in dispatch
chosen_handler)
File "/usr/lib/python2.6/site-packages/trac/web/main.py", line 295, in _pre_process_request
chosen_handler = filter_.pre_process_request(req, chosen_handler)
File "/usr/lib/python2.6/site-packages/trac/versioncontrol/api.py", line 86, in pre_process_request
self.get_repository(req.authname).sync()
File "/usr/lib/python2.6/site-packages/trac/versioncontrol/api.py", line 132, in get_repository
for connector in self.connectors
File "/usr/lib/python2.6/site-packages/trac/core.py", line 67, in extensions
return filter(None, [component.compmgr[cls] for cls in extensions])
File "/usr/lib/python2.6/site-packages/trac/core.py", line 204, in __getitem__
component = cls(self)
File "/usr/lib/python2.6/site-packages/trac/core.py", line 108, in maybe_init
init(self)
File "build/bdist.linux-i686/egg/tracext/git/git_fs.py", line 66, in __init__
self._version = PyGIT.Storage.git_version(git_bin=self._git_bin)
File "build/bdist.linux-i686/egg/tracext/git/PyGIT.py", line 145, in git_version
[v] = output.readlines()
It appears git was outputting:
usage: git [--version] [--exec-path[=GIT_EXEC_PATH]] [-p|--paginate|--no-pager] [--bare] [--git-dir=GIT_DIR] [--work-tree=GIT_WORK_TREE] [--help] COMMAND [ARGS]
The most commonly used git commands are:
add Add file contents to the index
...
Which is, for obvious reasons, not parsable into a version string.
The attached patch fixed the issue. Key is shell=False in the Popen call.
Without this patch, GitPlugin is completely useless, obviously.
I am unsure which environmental conditions triggered this bug; things used to run fine here until I did a system upgrade.