GitHub
The GitHub connector brings organizations, repositories, pull requests, commits, reviews, and comments into the graph. It stays current through a webhook.
Entities
| Entity | Represents | Key fields |
|---|---|---|
git_organization | An organization | username, name, email |
git_repository | A repository | full_name, description, default_branch, private |
git_user | A person | username (id), name, email |
git_commit | A commit | sha (id), message, branch, files_modified |
pull_request | A pull request (aliases PR, MR) | number, title, status, merged_at |
pr_comment | A review or PR comment | body, path, diff_hunk |
git_team | A team | name, privacy, members |
Relationships
| Relation | Target |
|---|---|
authored_by, reviewed_by, committed_by, assigned_to, commented_by, has_member | git_user |
owner | git_organization |
in_repository | git_repository |
has_commit, at_commit | git_commit |
on_pr | pull_request |
Exposing for linking
GitHub exposes two entities so other sources can reference them:
pull_requestis recognized from text like#123,pr#123,pr/123, or a pull-request URL.git_commitis recognized from a full or short commit SHA, or a commit URL.
So when a Slack message or a Jira ticket mentions pr#123, Virgo links it back
to the pull request here. See
Cross-domain linking.
Related
- Connector framework: how a connector like this is defined.
- Entities and Retrievers.