Git Repository Integration | GitHub, GitLab, Bitbucket
Connect GitScrum with GitHub, GitLab, or Bitbucket. Auto-link commits and PRs to tasks, sync branch status, and track code changes on your board.
11 min read
Linking your Git repositories to GitScrum creates automatic connections between code changes and project tasks. When developers reference task IDs in commits or pull requests, those activities appear on the task timeline, giving everyone visibility into code progress without leaving the project management tool.
Why Integrate Git Repositories
Benefits of Code-Task Linking
INTEGRATION VALUE:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β WHAT GIT INTEGRATION PROVIDES β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β FOR DEVELOPERS: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β β’ Link commits to tasks automatically ββ
β β β’ See task context in PR descriptions ββ
β β β’ Auto-update task status on merge ββ
β β β’ No context switching between tools ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β FOR PROJECT MANAGERS: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β β’ See code progress on tasks ββ
β β β’ Know when features are actually deployed ββ
β β β’ Track which branches relate to which features ββ
β β β’ Verify work completion through PR merges ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β FOR THE TEAM: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β β’ Complete audit trail: task β code β deploy ββ
β β β’ Better sprint reviews with actual code links ββ
β β β’ Easier debugging: find what changed for a feature ββ
β β β’ Compliance: trace requirements to implementation ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
GitHub Integration
Setting Up GitHub Connection
GITHUB SETUP:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β CONNECTING GITHUB TO GITSCRUM β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β STEP 1: ACCESS INTEGRATIONS β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β Navigate to: Project Settings β Integrations ββ
β β ββ
β β βββββββββββββββββββββββββββββββββββββββββββββββββββββββ ββ
β β β Available Integrations β ββ
β β β β ββ
β β β π GitHub [Connect] β ββ
β β β π¦ GitLab [Connect] β ββ
β β β πͺ£ Bitbucket [Connect] β ββ
β β βββββββββββββββββββββββββββββββββββββββββββββββββββββββ ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β STEP 2: AUTHENTICATE β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β Click "Connect" and authorize GitScrum: ββ
β β ββ
β β 1. Redirects to GitHub OAuth ββ
β β 2. Authorize GitScrum application ββ
β β 3. Select repositories to access ββ
β β 4. Confirm permissions ββ
β β ββ
β β Permissions requested: ββ
β β β’ Read repository metadata ββ
β β β’ Read/write commit statuses ββ
β β β’ Read pull requests ββ
β β β’ Webhook access for real-time updates ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β STEP 3: SELECT REPOSITORIES β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β Choose which repos to link: ββ
β β ββ
β β β acme-corp/frontend ββ
β β β acme-corp/backend-api ββ
β β β acme-corp/infrastructure ββ
β β β acme-corp/mobile-app ββ
β β ββ
β β Tip: Link only repositories relevant to this project ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β STEP 4: CONFIGURE WEBHOOKS β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β GitScrum automatically sets up webhooks for: ββ
β β ββ
β β β
Push events (commits) ββ
β β β
Pull request events (open, merge, close) ββ
β β β
Branch events (create, delete) ββ
β β ββ
β β These sync changes in real-time to your tasks ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
GitLab Integration
Setting Up GitLab Connection
GITLAB SETUP:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β CONNECTING GITLAB TO GITSCRUM β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β GITLAB.COM: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β Same OAuth flow as GitHub: ββ
β β ββ
β β 1. Click "Connect" on GitLab integration ββ
β β 2. Authorize via GitLab OAuth ββ
β β 3. Select projects to link ββ
β β 4. Webhooks configured automatically ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β SELF-HOSTED GITLAB: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β For private GitLab instances: ββ
β β ββ
β β 1. Enter your GitLab URL ββ
β β Example: https://gitlab.yourcompany.com ββ
β β ββ
β β 2. Generate Personal Access Token in GitLab ββ
β β Settings β Access Tokens ββ
β β Scopes: api, read_repository ββ
β β ββ
β β 3. Paste token in GitScrum ββ
β β ββ
β β 4. Select projects to integrate ββ
β β ββ
β β 5. Configure webhook URL in each GitLab project: ββ
β β Settings β Webhooks ββ
β β URL: [provided by GitScrum] ββ
β β Triggers: β Push β Merge Request β Tag ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Bitbucket Integration
Setting Up Bitbucket Connection
BITBUCKET SETUP:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β CONNECTING BITBUCKET TO GITSCRUM β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β BITBUCKET CLOUD: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β 1. Click "Connect" on Bitbucket integration ββ
β β 2. Authorize via Atlassian OAuth ββ
β β 3. Select workspaces and repositories ββ
β β 4. Webhooks configured automatically ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β BITBUCKET SERVER (SELF-HOSTED): β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β Similar to self-hosted GitLab: ββ
β β ββ
β β 1. Enter Bitbucket Server URL ββ
β β 2. Create Application Link in Bitbucket ββ
β β 3. Configure OAuth credentials ββ
β β 4. Set up webhooks manually ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Linking Commits to Tasks
Reference Tasks in Git Messages
COMMIT LINKING:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β HOW TO LINK COMMITS TO TASKS β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β REFERENCING TASK IDs: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β Include task ID in commit message: ββ
β β ββ
β β Format options: ββ
β β β’ #123 - Simple reference ββ
β β β’ TASK-123 - With project prefix ββ
β β β’ [GS-123] - Bracketed format ββ
β β ββ
β β Examples: ββ
β β βββββββββββββββββββββββββββββββββββββββββββββββββββββββ ββ
β β β git commit -m "Add user validation #456" β ββ
β β β β ββ
β β β git commit -m "[TASK-789] Fix login timeout issue" β ββ
β β β β ββ
β β β git commit -m "Implement dashboard filters β ββ
β β β β ββ
β β β - Added date range picker β ββ
β β β - Added status filter β ββ
β β β - Connected to API β ββ
β β β β ββ
β β β Closes #234" β ββ
β β βββββββββββββββββββββββββββββββββββββββββββββββββββββββ ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β WHAT HAPPENS: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β When commit is pushed: ββ
β β ββ
β β 1. GitScrum receives webhook notification ββ
β β 2. Parses commit message for task references ββ
β β 3. Links commit to referenced task(s) ββ
β β 4. Shows commit in task activity feed ββ
β β ββ
β β Task view shows: ββ
β β βββββββββββββββββββββββββββββββββββββββββββββββββββββββ ββ
β β β Activity β ββ
β β β β ββ
β β β π Alex committed "Add user validation" β ββ
β β β main β’ a8f3c2d β’ 2 hours ago β ββ
β β β View on GitHub β β ββ
β β βββββββββββββββββββββββββββββββββββββββββββββββββββββββ ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Pull Request Integration
PRs and Merge Requests
PR LINKING:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β CONNECTING PULL REQUESTS TO TASKS β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β AUTOMATIC LINKING: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β Reference tasks in PR title or description: ββ
β β ββ
β β PR Title: ββ
β β "Feature: Dashboard filtering [#234]" ββ
β β ββ
β β PR Description: ββ
β β "This PR implements the filtering functionality ββ
β β requested in task #234. ββ
β β ββ
β β Changes: ββ
β β - Date range picker component ββ
β β - Status dropdown filter ββ
β β - API integration ββ
β β ββ
β β Related: #234, #236" ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β PR LIFECYCLE EVENTS: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β GitScrum tracks PR state changes: ββ
β β ββ
β β Task Activity: ββ
β β ββ
β β π Alex opened PR #47 "Dashboard filtering" ββ
β β Reviewers: Jordan, Sam ββ
β β 5 files changed β’ +234 -45 ββ
β β ββ
β β π¬ Jordan reviewed PR #47 ββ
β β Status: Changes requested ββ
β β ββ
β β β
Jordan approved PR #47 ββ
β β ββ
β β π Alex merged PR #47 into main ββ
β β Task auto-moved to "Done" ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β AUTO-STATUS UPDATES: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β Configure automatic task movement: ββ
β β ββ
β β PR opened β Move task to "In Review" ββ
β β PR merged β Move task to "Done" ββ
β β PR closed β (no action or custom) ββ
β β ββ
β β Set in: Project Settings β Integrations β Automation ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Branch Tracking
Feature Branches
BRANCH INTEGRATION:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β TRACKING BRANCHES PER TASK β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β BRANCH NAMING CONVENTIONS: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β Include task ID in branch name: ββ
β β ββ
β β Recommended formats: ββ
β β β’ feature/234-dashboard-filters ββ
β β β’ fix/456-login-timeout ββ
β β β’ task/789-user-profile ββ
β β ββ
β β GitScrum recognizes patterns: ββ
β β β’ /123- ββ
β β β’ /TASK-123- ββ
β β β’ -123- ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β TASK VIEW: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β Branch information on task: ββ
β β ββ
β β βββββββββββββββββββββββββββββββββββββββββββββββββββββββ ββ
β β β Task #234: Dashboard Filters β ββ
β β β β ββ
β β β πΏ Branches: β ββ
β β β feature/234-dashboard-filters β ββ
β β β Created 3 days ago β’ 12 commits ahead β ββ
β β β β ββ
β β β π Pull Requests: β ββ
β β β PR #47: Dashboard filtering β ββ
β β β Status: Open β’ Review pending β ββ
β β βββββββββββββββββββββββββββββββββββββββββββββββββββββββ ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Best Practices
Making Integration Work Well
BEST PRACTICES:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β GIT INTEGRATION TIPS β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β COMMIT MESSAGES: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β β
Do: ββ
β β β’ Include task ID in every commit ββ
β β β’ Use consistent format across team ββ
β β β’ Reference multiple tasks if relevant ββ
β β ββ
β β β Don't: ββ
β β β’ Forget task references in quick fixes ββ
β β β’ Use different formats per developer ββ
β β β’ Reference wrong task IDs (hard to undo) ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β BRANCH STRATEGY: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β Recommended workflow: ββ
β β ββ
β β 1. Create branch with task ID ββ
β β git checkout -b feature/234-user-search ββ
β β ββ
β β 2. Commit with references ββ
β β git commit -m "Add search API endpoint #234" ββ
β β ββ
β β 3. Open PR with task link ββ
β β Title: "User search feature [#234]" ββ
β β ββ
β β 4. Merge and auto-close ββ
β β PR merge β task moves to Done ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β TEAM STANDARDS: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β Document in team wiki: ββ
β β ββ
β β β’ Required task ID format: #123 or [PROJ-123] ββ
β β β’ Branch naming: type/id-description ββ
β β β’ PR template with task reference field ββ
β β β’ Commit message template ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ