What is the purpose of a GitHub Deploy Key?
Select an answer to reveal the explanation.
Short Explanation and Infographic
A deploy key is like giving a valet the key to just one car, not your whole key ring. It's an SSH key scoped specifically to one repository — perfect for CI/CD servers that need to pull or push to exactly one repo.
Full explanation below image
Full Explanation
GitHub Deploy Keys are SSH keys that provide access to a single repository. They can be configured as read-only or read/write. Deploy keys are commonly used for automated systems (CI/CD pipelines, deployment servers) that need to clone or push to a specific repository without providing access to all repositories the configuring user can access. Each deploy key is unique to one repository. Unlike personal access tokens or OAuth apps, deploy keys cannot access the GitHub API — they only work for Git operations (clone, pull, push) over SSH. Commit signing uses GPG keys, not deploy keys. GitHub Packages uses tokens for authentication.