Synchronise a GitHub repository with a local Trac repository


This plugin synchronises a GitHub repository with a local repository used by Trac.

When a GitHub repository is changed, this plugin pulls those changes into the local repository.

After installation of this plugin, you have to configure GitHub to notify Trac about changes. You do this on GitHub under Admin -> Service Hooks section, where you select Post-Receive URLs service hook type and enter an URL of your Trac installation's /githubsync handler. For example, if your Trac installation is on then enter as service hook URL.

Name of the repository on GitHub should match (it is case sensitive) the local one (you can use aliases in Trac 0.12 to assure that). User under which Trac is running on the server should have write access to the local repository for which it is configured and you want to sync.

Plugin automatically triggers trac-admin changeset added command with new revisions after every fetch, so ticket updates through commit messages is possible.

For testing, use GitHub's Test Hook. Opening in the browser will not work, because POST request is required, not GET request.

Bugs/Feature Requests

Please use GitHub for any issues you have with GitHubSyncPlugin.


Download the zipped source from here.


You can clone GitHubSyncPlugin from here using git, or browse the source on GitHub.


This plugin can be installed by running the following:

pip install GitHubSyncPlugin

For more information, please follow documentation on how to install Trac's plugins.


Author: mitar
Maintainer: mitar

Last modified 5 years ago Last modified on Sep 17, 2016, 9:59:21 PM