Git (local repos)
Git is the simplest source. DevRecall walks directories you point it at,
finds .git folders, and reads commits authored by you.
Connect
Section titled “Connect”Git has no OAuth — it’s pure local config. Either run devrecall setup
(the wizard walks you through it) or edit ~/.devrecall/config.json
directly:
{ "git": { "enabled": true, "scan_paths": ["~/Projects", "~/work"], "repos": ["~/work/backend"], "emails": ["pavel@company.com", "pavel.piliak@gmail.com"] }}| Field | Meaning |
|---|---|
scan_paths | Walked recursively for .git directories |
repos | Explicit repo paths (always included, even if outside scan_paths) |
emails | Author emails that count as “you” — falls back to git config user.email per repo if empty |
Your author email is required
Section titled “Your author email is required”DevRecall only collects commits whose author matches one of your emails — that’s how it tells your work apart from your teammates’ in a shared repo. It looks for that identity in this order:
git.emailsin your config.git config user.emailin each repo (local, then global) at sync time.
If none of these resolve to an email — e.g. a fresh machine where you’ve
never set git config --global user.email and left git.emails empty —
DevRecall collects no commits at all rather than guess. (It will not fall
back to ingesting every author in the repo.) If your timeline is missing your
commits, set your identity and re-sync:
git config --global user.email "you@example.com"# or add it explicitly to ~/.devrecall/config.json under git.emailsdevrecall syncAdd every address you commit under (personal + work) to git.emails so
nothing is missed.
What gets collected
Section titled “What gets collected”| Field | Source |
|---|---|
| Commit SHA | git log |
| Subject | First line of commit message |
| Body | Rest of commit message |
| Author/date | git log --author/--date |
| Files changed | git log --shortstat |
| Insertions/deletions | --shortstat |
| Branch | Best-effort from --all |
Merge commits are skipped by default.
Linking commits to tickets
Section titled “Linking commits to tickets”If your commit messages contain Jira (PROJ-123) or Linear (ENG-456)
issue keys, DevRecall extracts them automatically. Standups then group
commits under their tickets:
- PROJ-123 (Fix payment retry logic): 3 commits — backoff, max retries, testsPrivacy
Section titled “Privacy”- Commit content stays on disk — DevRecall reads but never uploads it
- Only commits authored by your configured emails are collected
- Drop a repo from indexing by removing its path from
git.repos/git.scan_paths
Performance
Section titled “Performance”git log is fast. Even on a repo with 50k commits, the initial 90-day
sync takes <1 second. Subsequent syncs are incremental — DevRecall
remembers the last commit it saw per repo.