Connecting Timequip to GitLab
The Timequip GitLab integration links merge requests, branches, commits, and pipeline activity to Timequip tasks. Timequip remains the source of truth for tasks, so GitLab Issues are not imported or synchronized.
Before you begin
- You need an Account Owner or Admin role to connect GitLab. See Account Roles: Owner, Admin, Member.
- You need a Project Leader or account Admin role to choose repositories and workflow automation. See Project Roles: Leader, Editor, Viewer.
- Create a GitLab Personal Access Token with the api scope. Timequip uses it to list accessible projects and create the repository webhook.
- For self-managed GitLab, the instance must use HTTPS and be publicly reachable from Timequip. Private-network-only instances are not supported in this version.
Connect GitLab
- Switch to the account that owns the Timequip project.
- Open Account Settings → Git integrations.
- Enter the GitLab origin, such as https://gitlab.com or your public self-managed HTTPS origin.
- Paste the Personal Access Token and select Connect GitLab.
- Timequip verifies the token and stores it encrypted. The token is never displayed again.
Connect GitLab projects
- Open the relevant Timequip project, then open Project Settings → Git repositories.
- Select the GitLab connection and choose a repository.
- Click Connect. Timequip creates a repository webhook for merge requests, pushes, and pipelines.
- Repeat for every repository that contributes to this Timequip project.
Use task keys in development work
Reference the Timequip key in the branch name, commit message, merge request title, or merge request description. For a project key API, use references such as API-73.
- Branch:
fix/API-73-webhook-retry - Commit:
API-73 Retry failed GitLab webhook - Merge request:
API-73 Process merge request events
Timequip recognizes more than one key in the same merge request. Links are visible from the task's Development section.
Configure automation
Choose the project statuses to use when a merge request opens and when it merges in Project Settings → Git repositories. A merge only moves a task to the selected closed status after all other linked pull or merge requests are no longer open. A merge request closed without merge does not change the task.
Optional GitLab issue tracker link
You can also configure GitLab's Custom issue tracker integration to give users a direct Timequip link in the project sidebar. Use the Timequip project URL as the project URL and the Timequip task URL pattern for the issue URL. This is optional; it does not replace the repository webhook.
Troubleshooting
- If authentication fails, create a new Personal Access Token with api scope and reconnect GitLab.
- If repository setup fails, make sure the token owner has permission to manage webhooks for that GitLab project.
- If the GitLab host is rejected, verify that it is an HTTPS origin without a path and resolves to a public address.
- If a task is not linked, check the exact project key and task number in the merge request or commit.
For GitHub App setup, see Connecting Timequip to GitHub.