Commit Data
Sync AI-attributed commits from GitHub by detecting Co-Authored-By headers.
Sync Commits
Sync commits from a specific repository:
# Sync last 90 days (default)pnpm cli github:sync getsentry/sentry
# Sync last 30 dayspnpm cli github:sync getsentry/sentry --days 30Sync Options
| Option | Description |
|---|---|
--days <n> | Sync last N days (default: 90) |
--from <date> | Backfill from date (syncs all repos) |
--reset | Delete existing commits first |
--full | Reset and sync from 2024-01-01 |
--dry-run | Preview without writing to database |
--retry | Retry failed requests with backoff |
Full Reset
To completely rebuild commit data:
# Reset and backfill from a specific datepnpm cli github:sync --reset --from 2024-01-01
# Shorthand for the abovepnpm cli github:sync --fullDry Run
Test detection without writing to the database:
pnpm cli github:sync getsentry/sentry --dry-runUseful for verifying your GitHub App setup.
Backfill All Repositories
Backfill historical commits across all repos the GitHub App can access:
pnpm cli backfill github --from 2024-10-01Mark backfill complete:
pnpm cli backfill:complete githubCheck Sync Status
View sync state and statistics:
pnpm cli github:statusDebug Commits
Inspect commits stored in the database:
# Show recent commits for a repopnpm cli github:commits getsentry/sentry
# Limit resultspnpm cli github:commits getsentry/sentry --limit 50User Identity Mapping
Map GitHub usernames to work emails:
# List users and their mapping statuspnpm cli github:users
# Sync emails from GitHub org (requires GraphQL access)pnpm cli github:users:sync
# Manually map a userpnpm cli github:users:map 12345678 user@company.comCleanup
Remove merge commits that were incorrectly tracked:
# Dry runpnpm cli github:cleanup-merges --dry-run
# Executepnpm cli github:cleanup-merges