# Repositories

A repository is a collection of Splitgraph images. The repository's name consists of two parts: the namespace and the actual repository. For example, this:

splitgraph/geonames:0b77a102cbabe2de8597dcab71f1c333f16f9e1963c9c8982988e10e65989c62


refers to the Geonames image in the namespace splitgraph, repository geonames with image hash 0b77a102cbabe2de8597dcab71f1c333f16f9e1963c9c8982988e10e65989c62.

By default, when you check out an image, sgr loads the data into a PostgreSQL schema with the same name as the image's repository. So if you check out the image above, sgr loads it into a PostgreSQL schema "splitgraph/geonames". Any application can then query that schema to modify the repository, and then you can use sgr commit to make a new image including your changes.

In terms of access control, sgr instances in "registry mode" (including Splitgraph) use the namespace as an identifier. When you push an image to another sgr engine, you can only push it to a namespace that matches your session_user (in the case of Splitgraph, this is your username).