Skip to main content

Overview

Apollo’s GitHub integration connects your code repositories to your project management workflow. Track commits, pull requests, and repository activity — all linked to Apollo tasks and projects.

Setup

1

Connect GitHub Account

Navigate to Project > Settings > GitHub and click Connect GitHub. This starts an OAuth flow to authorize Apollo.
2

Select Repositories

After authorization, select which repositories to connect to your Apollo project.
3

Configure Webhooks

Apollo automatically sets up webhooks on connected repositories to receive real-time events (commits, PRs, pushes).

Features

Commit Tracking

All commits to connected repositories are tracked and linked to Apollo tasks using four methods:
MethodHow It WorksExample
PatternCommit message contains task IDfix: resolve login bug TASK-42
BranchBranch name contains task IDfeature/TASK-42-login-fix
AIApollo Brain analyzes commit contentAI detects relevance to task based on changes
ManualExplicitly link in task detailClick “Link commit” on task’s GitHub tab

Pull Request Dashboard

View all open pull requests across connected repositories:
  • Status — open, merged, closed
  • Review status — approved, changes requested, pending
  • CI checks — pass/fail status
  • Linked tasks — which Apollo tasks this PR relates to

Repository Activity

Per-repository dashboard showing:
  • Recent commits and their authors
  • Open pull requests
  • Branch activity
  • Contributor statistics

AI-Powered Code Analysis

Apollo Brain includes GitHub tools for intelligent code operations:
  • Analyze PR changes — AI reviews the diff and summarizes what changed
  • Suggest reviewers — recommends team members based on code ownership
  • Check merge readiness — verifies CI status, review approvals, and conflicts
  • Create PR reviews — AI generates review comments

Webhook Security

Webhooks use HMAC verification to ensure events are genuinely from GitHub. Each webhook payload is signed with a shared secret.

Database Schema

The GitHub integration uses 6 database tables to store:
  • Connected repositories
  • Commit history
  • Pull request metadata
  • Task-to-commit/PR linkages
  • Webhook event logs
  • OAuth tokens