Setting repository visibility

You can choose who can view your repository.

In this article

About repository visibility changes

Organization owners can restrict the ability to change repository visibility to organization owners only. For more information, see "Restricting repository visibility changes in your organization."

We recommend reviewing the following caveats before you change the visibility of a repository.

Making a repository private

  • GitHub will detach public forks of the public repository and put them into a new network. Public forks are not made private.
  • If you change a repository's visibility from internal to private, GitHub will remove forks that belong to any user without access to the newly private repository. The visibility of any forks will also change to private. For more information, see "What happens to forks when a repository is deleted or changes visibility?"
  • If you're using GitHub Free for user accounts or organizations, some features won't be available in the repository after you change the visibility to private. For more information, see "GitHub's products."
  • Any published GitHub Pages site will be automatically unpublished. If you added a custom domain to the GitHub Pages site, you should remove or update your DNS records before making the repository private, to avoid the risk of a domain takeover. For more information, see "Managing a custom domain for your GitHub Pages site."
  • GitHub will no longer included the repository in the GitHub Archive Program. For more information, see "About archiving content and data on GitHub."

Making a repository internal

Note: Internal repositories are available with GitHub Enterprise Cloud and GitHub Enterprise Server 2.20+. For more information, see "GitHub's products."

Making a repository public

Changing a repository's visibility

  1. On GitHub, navigate to the main page of the repository.
  2. Under your repository name, click Settings.
    Repository settings button
  3. Under "Danger Zone", to the right of to "Change repository visibility", click Change visibility.
    Change visibility button
  4. Select a visibility.
    Dialog of options for repository visibility
  5. To verify that you're changing the correct repository's visibility, type the name of the repository you want to change the visibility of.
  6. Click I understand, change repository visibility.
    Confirm change of repository visibility button

Further reading

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.