Git Integration

Updated

Overview

Kwilio Projects links to GitHub and Bitbucket so you can see commits and pull requests in the context of the task they belong to, without leaving the app.

There's nothing to click on each task. Branches attach themselves by name.

Connecting a Repository

  1. Open your organisation settings → Integrations
  2. Connect GitHub or Bitbucket and authorise access to the repositories you want linked

Your repository tokens are read in exactly one place on the server and are never sent to the desktop app — the app can replace a token, but never read one back.

How Branches Find Their Task

Every task has a reference made from its project key and number, such as WEB-14. Name a branch with that reference at the front:

WEB-14-fix-login

and it attaches itself to task 14, bringing its commits with it. Pull requests on that branch attach the same way.

Nothing to click, and a deleted branch cleans up after itself — the link disappears with it rather than leaving a dead reference on the task.

What You See on a Task

Once a branch or pull request has attached itself, the task shows:

  • The branch and its commits
  • Pull requests, and their state
  • Whether a pull request has been merged

A merged pull request on your work also generates a notification. See Notifications.

Shipping and Merge State

Release notes treat "done" and "merged" as two claims about the same work, and they disagree more often than you'd like. Work is counted as shipped if either is true, and every disagreement is reported back to you as a finding. See AI Features.

You can also ask whether the code on a task's branches actually matches what the task promised — with "unclear" as a valid answer.

Troubleshooting

A branch didn't attach

  • Check the branch name starts with the task reference, including the project key: WEB-14-fix-login, not fix-login-WEB-14
  • Check the repository is one of the ones you authorised

Nothing is updating

  • The app needs a network connection; there's no offline cache
  • Reconnect the provider from Integrations to refresh the token