Version Control Integration with GitScrum | Link Commits
Connect GitHub, GitLab, or Bitbucket with GitScrum. Link commits, branches, and PRs to tasks for complete traceability from code to deployment.
9 min read
Development and project management should be connected, not siloed. GitScrum integrates with version control systems to provide traceability from code to task.
Integration Benefits
Why Connect VCS to GitScrum
VERSION CONTROL INTEGRATION VALUE:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β WITHOUT INTEGRATION: β
β β
β "What code changed for this feature?" β
β β Search through commits manually β
β β
β "Is this task actually done?" β
β β Ask developer, check repo manually β
β β
β "Who can review this?" β
β β Task in GitScrum, PR in GitHub, no connection β
β β
β "What's the status of this PR?" β
β β Check GitHub, then update GitScrum manually β
β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β WITH INTEGRATION: β
β β
β TRACEABILITY: β
β Task β Branch β Commits β PR β Deployment β
β Complete audit trail β
β β
β AUTOMATION: β
β PR opened β Task moves to "In Review" β
β PR merged β Task moves to "Done" β
β β
β CONTEXT: β
β From task, see all related code β
β From PR, see task context and requirements β
β β
β VISIBILITY: β
β Real progress based on actual code state β
β Not just what people say they did β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Setting Up Integration
GitHub Integration
CONNECTING GITHUB:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β SETUP STEPS: β
β β
β 1. Go to GitScrum Settings β Integrations β
β 2. Select GitHub β
β 3. Authorize GitScrum to access your repos β
β 4. Select repositories to connect β
β 5. Configure automation rules β
β β
β AUTOMATION OPTIONS: β
β β
β β Link commits containing task ID β
β β Link branches containing task ID β
β β Link PRs containing task ID β
β β Move task to "In Review" when PR opened β
β β Move task to "Done" when PR merged β
β β Create task from GitHub issue β
β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β TASK ID PATTERNS: β
β β
β Recognized in: β
β β’ Commit messages: "fix: resolve login issue PROJ-123" β
β β’ Branch names: feature/PROJ-123-add-export β
β β’ PR titles: "[PROJ-123] Add export feature" β
β β’ PR body: "Closes PROJ-123" β
β β
β Format: PROJECT-NUMBER (e.g., PROJ-123, API-456) β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Branch Naming Convention
BRANCH NAMING BEST PRACTICES:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β FORMAT: β
β type/TASK-ID-short-description β
β β
β EXAMPLES: β
β feature/PROJ-123-add-export-csv β
β bugfix/PROJ-456-fix-login-timeout β
β hotfix/PROJ-789-security-patch β
β chore/PROJ-101-update-dependencies β
β β
β TYPES: β
β feature/ - New functionality β
β bugfix/ - Bug fix β
β hotfix/ - Urgent production fix β
β chore/ - Maintenance task β
β docs/ - Documentation β
β refactor/ - Code refactoring β
β β
β GITSCRUM AUTOMATIC LINKING: β
β β
β Branch: feature/PROJ-123-add-export β
β β β
β Automatically links to task PROJ-123 β
β β β
β Task shows branch, commits, and PR β
β β
β CREATE FROM TASK: β
β Task β "Create Branch" button β
β Auto-generates: feature/PROJ-123-task-title β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Commit Best Practices
Commit Message Format
COMMIT MESSAGE STANDARDS:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β FORMAT: β
β <type>: <description> [TASK-ID] β
β β
β [optional body] β
β β
β [optional footer] β
β β
β EXAMPLES: β
β β
β β
GOOD: β
β feat: add CSV export functionality PROJ-123 β
β fix: resolve timeout on large datasets PROJ-456 β
β docs: update API documentation PROJ-789 β
β β
β β BAD: β
β "fixed stuff" β
β "WIP" β
β "updates" β
β "PROJ-123" (no description) β
β β
β TYPES: β
β feat: New feature β
β fix: Bug fix β
β docs: Documentation β
β style: Formatting β
β refactor: Code restructuring β
β test: Adding tests β
β chore: Maintenance β
β β
β WITH BODY (for complex changes): β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β feat: add CSV export with custom columns PROJ-123 ββ
β β ββ
β β - Support column selection ββ
β β - Add date range filtering ββ
β β - Implement streaming for large exports ββ
β β ββ
β β Closes PROJ-123 ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Pull Request Workflow
PR and Task Connection
PULL REQUEST INTEGRATION:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β WHEN PR IS OPENED: β
β β
β GitHub PR: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β [PROJ-123] Add CSV export functionality ββ
β β ββ
β β ## Description ββ
β β Implements CSV export as requested in PROJ-123. ββ
β β ββ
β β ## Changes ββ
β β - Added export button to data grid ββ
β β - Implemented CSV generation ββ
β β - Added tests ββ
β β ββ
β β ## Testing ββ
β β - [x] Unit tests pass ββ
β β - [x] Manual testing completed ββ
β β ββ
β β Closes PROJ-123 ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β GITSCRUM AUTO-UPDATE: β
β β
β Task PROJ-123: β
β Status: In Progress β In Review (automatic) β
β β
β Linked PR: #142 "Add CSV export functionality" β
β Commits: 5 commits linked β
β Branch: feature/PROJ-123-add-export β
β β
β WHEN PR IS MERGED: β
β β
β Task Status: In Review β Done (automatic) β
β Deployment: Linked to release if tagged β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Code Review in Context
CONTEXT-AWARE CODE REVIEW:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β REVIEWER VIEW (GitHub + GitScrum): β
β β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β PR #142: Add CSV export functionality ββ
β β ββ
β β LINKED TASK: PROJ-123 ββ
β β ββββββββββββββββββββββββ ββ
β β Story: As a user, I can export data to CSV ββ
β β ββ
β β Acceptance Criteria: ββ
β β β Export button visible on data grid ββ
β β β All columns included in export ββ
β β β Large datasets handled (10k+ rows) ββ
β β β Downloaded file opens in Excel ββ
β β ββ
β β Design: [link to mockup] ββ
β β ββ
β β [View in GitScrum] ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β BENEFITS: β
β β
β β’ Reviewer sees acceptance criteria β
β β’ Can verify implementation matches requirements β
β β’ Context without leaving code review β
β β’ Better review quality β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Task View Integration
Complete Task Context
TASK WITH VCS CONTEXT:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β PROJ-123: CSV Export Feature β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β Status: Done β
β
β Assignee: @alex β
β Sprint: Sprint 24 β
β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β DEVELOPMENT ACTIVITY: β
β β
β Branch: feature/PROJ-123-add-export β
β β
Merged to main β
β β
β Pull Request: #142 "Add CSV export functionality" β
β β
Merged Jan 18, 2024 β
β Approved by: @jordan, @maria β
β β
β Commits (5): β
β βββ abc1234: feat: add export button β
β βββ def5678: feat: implement CSV generation β
β βββ ghi9012: test: add export tests β
β βββ jkl3456: fix: handle special characters β
β βββ mno7890: docs: add export documentation β
β β
β Deployment: β
β βββ v2.3.0 - Deployed Jan 19, 2024 β
β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β TIMELINE: β
β Jan 15: Task started β
β Jan 16: Branch created β
β Jan 17: PR opened, review requested β
β Jan 18: PR approved and merged β
β Jan 19: Deployed to production β
β β
β Total development time: 4 days β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Automation Rules
Status Automation
VCS-TRIGGERED AUTOMATIONS:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β TRIGGER ACTION β
β ββββββββββββββββββββββββ βββββββββββββββββββββββββββββββ β
β β
β Branch created with Task β "In Progress" β
β task ID β
β β
β First commit pushed Start time tracking β
β (if enabled) β
β β
β PR opened Task β "In Review" β
β Notify assignee β
β β
β PR approved Add "Approved" label β
β β
β PR merged to main Task β "Done" β
β Stop time tracking β
β Close linked issues β
β β
β PR merged to release Link to release version β
β branch β
β β
β Deployment completed Add deployment info β
β Notify stakeholders β
β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β CUSTOM RULES: β
β β
β If PR has "WIP" in title: β
β β Don't move task to "In Review" β
β β
β If PR is to hotfix branch: β
β β Tag task as "hotfix" β
β β Notify team in Slack β
β β
β If commit contains "BREAKING": β
β β Add "breaking-change" label to task β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ