# Registry

The [registry commands](#registry) provide the ability to store the current version information for multiple repositories and associated schemas in the database.

Data is stored using a dynamic object (in the \_rootdef map file), avoiding any dependency on an associated schema.  However, this approach does depend on deploying/using a variant of the JadeGit console beyond development to update the registry wherever code is deployed.

While the current commit ID can be stored separately if preferred, the registry provides:

* Durability (backed up & restored with the database by existing procedures).
* Extensibility (contents may be expanded to support other deployment features).
* Safeguards (updates validated against current information to prevent deployment issues).

When a registry is supplied to the build process, the deployment execution handles verifying the registry at the start and updating the registry at the end, removing the need to handle this explicitly at the end of a pipeline.

<img src="https://content.gitbook.com/content/Y1IAL1hDvA1grxYC9uyY/blobs/ecnm8WXDpce94dKrFWDQ/deploy-pipeline-registry.excalidraw.svg" alt="" class="gitbook-drawing">
