About securing your repository

GitHub provides a number of ways that you can help keep your repository secure.

In this article

Setting up your repository securely

The first step to securing a repository is to set up who can see and modify your code. For more information, see "Managing repository settings."

Securing your repository

GitHub has a growing set of security features that help you keep your code secure. You can find these on the Security tab for your repository.

Available for all repositories

  • Security policy

    Make it easy for people to confidentially report security vulnerabilities they've found in your repository. For more information, see "Adding a security policy to your repository."

  • Security advisories

    Privately discuss and fix security vulnerabilities in your repository's code. You can then publish a security advisory to alert your community to the vulnerability and encourage them to upgrade. For more information, see "About GitHub Security Advisories."

  • Dependabot alerts and security updates

    View alerts about dependencies that are known to contain security vulnerabilities, and choose whether to have pull requests generated automatically to update these dependencies. For more information, see "About alerts for vulnerable dependencies" and "About Dependabot security updates."

  • Dependabot version updates

    Use Dependabot to automatically raise pull requests to keep your dependencies up-to-date. This helps reduce your exposure to older versions of dependencies. Using newer versions makes it easier to apply patches if security vulnerabilities are discovered, and also makes it easier for Dependabot security updates to successfully raise pull requests to upgrade vulnerable dependencies. For more information, see "About Dependabot version updates."

Available for public repositories and for repositories with Advanced Security

These features are available for all public repositories, and for private repositories owned by organizations with an Advanced Security license. For more information, see "About GitHub Advanced Security."

  • Code scanning alerts

    Automatically detect security vulnerabilities and coding errors in new or modified code. Potential problems are highlighted, with detailed information, allowing you to fix the code before it's merged into your default branch. For more information, see "About code scanning."

  • Secret scanning alerts

    For private repositories, view any secrets that GitHub has found in your code. You should treat tokens or credentials that have been checked into the repository as compromised. For more information, see "About secret scanning."

  • Dependency review - Show the full impact of changes to dependencies and see details of any vulnerable versions before you merge a pull request. For more information, see "About dependency review."

Exploring dependencies

GitHub's dependency graph allows you to explore:

  • Ecosystems and packages that your repository depends on
  • Repositories and packages that depend on your repository

You must enable the dependency graph before GitHub can generate Dependabot alerts for dependencies with security vulnerabilities. Enabling the dependency graph also enables GitHub to run dependency reviews of pull requests.

You can find the dependency graph on the Insights tab for your repository. For more information, see "About the dependency graph."

Did this doc help you?

Privacy policy

Help us make these docs great!

All GitHub docs are open source. See something that's wrong or unclear? Submit a pull request.

Make a contribution

Or, learn how to contribute.