.. _git-access-roles: GitHub Access & Permissions Guide ====================================== This document outlines the permission levels available in IMAP SDC repositories. Overview ======== GitHub provides five repository roles with varying permission levels. Below we outline the permissions needed to contribute to IMAP SDC repositories. --- What GitHub Users Can Access ============================= Any GitHub user (without invitation) can: - ✅ View **public repositories** - ✅ Fork public repositories - ✅ Create issues in public repos - ✅ Comment on public issues - ✅ Edit titles and descriptions of your own issues - ✅ Create pull requests - ❌ **Cannot** add label or assignees, etc to the issues - ❌ **Cannot** trigger unit test workflows on PRs (requires SDC approval) - ❌ **Cannot** request reviewers on PRs (SDC must assign reviewers) - ❌ **Cannot** push code, merge PRs, or modify issues - ❌ **Cannot** access private repositories --- Role Permissions & Responsibilities ----------------------------------- GitHub Read Role ~~~~~~~~~~~~~~~~~ Read role should give same permissions as a user without invitation for IMAP SDC public repositories. These permissions align with IMAP project requirements and are sufficient for most L0 to L3 code contributors based on project guidelines. Additional GitHub Roles ----------------------- Beyond the **GitHub Read** role (which is sufficient for most contributors), GitHub provides additional permission levels: `Triage`, `Write`, `Maintain`, and `Admin`. Please read the GitHub's breakdown of these roles and their permissions in the `GitHub documentation on repository roles `_. **If you need permissions** please contact the IMAP SDC team to request the appropriate access level for your role.