We analyzed 17 examples of how GitHub handles permission & access control across their product, spanning 8 different approaches: access denied page, confirm destructive, invite flow, member list, permission settings, role assignment, role definitions, scope hierarchy.

GitHub — Org → People
Organization member list with invite modal open

GitHub — Org → People → Members
Organization member list showing single owner with detailed metadata

GitHub — Org → Teams → Design → Members
Team member list showing team visibility and member management

GitHub — Org → People → Invite → Role selection
Invite flow showing role selection for new organization member

GitHub — Repo → Settings → Collaborators and teams
Repository collaborators page with role dropdown showing access levels

GitHub — Org → People → Invitations
Pending invitations list with success confirmation banner

GitHub — Email (Gmail)
Organization invite email received by invitee

GitHub — Org → Teams → Design → Add a member
Modal for adding a member to a specific team

GitHub — Org → Teams → Design → Add a member → Invitations
Team invite modal showing pending invitations and requests tabs

GitHub — Repo → Settings → Collaborators → Add people
Add people dropdown for inviting collaborators to repository

GitHub — Org → People → Invitations → Cancel
Confirmation dialog for canceling a pending organization invite

GitHub — Repo → Settings → Collaborators → Remove
Confirmation dialog for removing a collaborator from repository

GitHub — Org → Teams
Teams empty state explaining team-based permission model

GitHub — Org → Settings → Roles
Organization role management showing all built-in roles and permissions

GitHub — Repo → Invite collaborator → Choose role
Repository collaborator invite showing all role options with descriptions

GitHub — Org → Settings → Member privileges
Organization member privileges showing default permissions and restrictions

GitHub — Direct repo URL (no access)
404 page shown when accessing private repository without permission