Edit icon Edit This Page

Understanding Public vs Private Repositories

Repsy repositories can be either private or public.
Each visibility type serves different use cases depending on how you want others to access your packages.

Visibility only decides whether anonymous callers can read a repository. It does not restrict a repository to specific users. See Who Can Do What below.

Private Repositories

Private is the default setting for all repositories created in Repsy.

  • Requires authentication for both publishing and downloading: a signed-in user account or a deploy token
  • Ideal for internal tools, private libraries, or CI/CD workflows
  • Anonymous callers have no access

“Private” means login required, not “restricted to specific users”. Every user account on the instance can read and modify every private repository.

Public Repositories

Public repositories allow open access for downloading packages.

  • No authentication needed to download packages
  • Publishing still requires authentication
  • Suitable for open-source packages or publicly shared tools

Even when a repository is public, only authenticated users can publish or modify packages.

Who Can Do What

Repsy has no per-repository owners or access lists. What a caller may do depends only on whether they are signed in, and on their role:

CallerPublic repositoryPrivate repository
AnonymousReadNo access
Signed-in USERRead and writeRead and write
ADMINEverything a USER can do, plus manageEverything a USER can do, plus manage

Every user account on the instance can read and modify every repository, including private ones, and can see their names.

Only manage operations need the ADMIN role:

  • Creating a repository
  • Renaming a repository, or changing its description and settings (including its visibility)
  • Deleting a repository
  • Deleting a repository’s artifacts and versions
  • Managing a repository’s deploy tokens
  • Managing users

Keeping Repositories Apart

If you need some repositories to stay hidden from some people, keep this model in mind:

  • Give CI jobs and external parties a deploy token, not a user account. A deploy token is scoped to a single repository and can be read-only, so it gives access to that repository and nothing else. Anyone who can sign in can read every repository, so a user account is not a way to share just one.
  • Only create user accounts for people you trust with every repository on the instance.
  • Run one Repsy instance per team when repositories must be kept apart between teams.

Switching Visibility

You can change a repository’s visibility at any time. This needs the ADMIN role:

  • Go to the Repositories tab
  • Open the more options menu (⋮) next to the repository
  • Click Settings
  • Toggle the Private setting on or off
  • Save your changes

Changes apply immediately, and you can switch back anytime.

Was this page helpful?