GitHub Integration

GitHub is the largest code host on the planet with over 17.5 million repositories. These repositories are open to the community for public projects and secure for private ones.

What can we do currently?

Right now you can connect to a GitHub repository with a Taiga project and generate a one-way communication (from GitHub to Taiga) to:

  • Change the status of an epic, user story, issue, or task in Taiga with the commit message: you may want to read more about this feature in the article "Changing elements status via commit message".
  • Attach commits in an epic, user story, issue, or task of Taiga with the commit message: you may want to read more about this feature in the article "Attach commits to elements via commit message".
  • Create issues on Taiga when they are created on GitHub*.
  • Add comments to the connected issues on Taiga when they are created on GitHub.

In Taiga an issue is connected with a GitHub issue if it was created by the GitHub integration. In the detail page of an issue on Taiga you can see a link under the subject to the original issue in GitHub.

And what can't we do?

  • Dual synchronization: currently the integration functionality only allows receiving messages from GitHub. Taiga can't communicate with GitHub (the one-way communication is from Github to Taiga), so changes made in Taiga won't be reflected in GitHub.
  • Show commit links in Taiga issues: If you name a story, task or issue in a commit message (by its reference number) a link to commit won't appear in Taiga.
  • "Sync current GitHub issues and comment when the integration module in Taiga is enabled*: the integration only works with the future issues and comments added in GitHub.

Integration will always take time so please be patient. If you need a specific integration and you feel ready to get a machete and get into the Taiga, please review our API Docs and our FAQs about how you can contribute to Taiga.

If you need help in a specific feature, you can always get in touch with the community and contact with us.

First: Configure the integration module in Taiga

  1. Go to Admin > Integrations > GitHub
  2. Fill secret key or use the auto generated one
  3. Copy the payload URL input

Admin > Integrations > GitHub Panel

Second: Configure Webhooks in your GitHub repository

Be careful if you use organization webhooks instead of repository webhooks because the first emit calls for events in all of the repositories and the second only in one of them.

  1. Click on Settings > Webhooks & Services > Add webhook
  2. On that screen set the payload url with the payload url from Taiga
  3. The secret key must be filled with the same content as the secret key from Taiga
  4. Content type must be application/json.
  5. Taiga currently listens for three different kind of events. Just check "send me everything" or the events you want Taiga to listen for.
    1. Push events: changing element status via commit message
    2. Issues: issues created in GitHub appear automatically in Taiga
    3. Issue comment: issue comments created in GitHub appear automatically in Taiga
  6. Press Add webhook button to create the new webhook

GitHub Webhooks

Here you can find a video describing the whole process: