Repository cloning is included with all Enterprise plans and is available as a paid option on yearly Platinum plans paid via invoice. In order to enable this feature, please reach out to our Sales team for more information.
Why should you use Environments
We recommend using a development environment for Prismic repositories if you have a continuous development cycle and are regularly implementing new designs or components to your website.
This option allows you to clone the entirety of your production repository to a development environment: copying all of the custom types, documents, and assets. The user-base remains independent, ensuring that only the relevant developers and content editors have access to the development environment.
Once cloned, you can perform the necessary changes to your custom types, create new ones, and safely test them out in the development environment of your codebase. Your development application can connect to the Prismic development API endpoint.
See a step-by-step illustration of the workflow is this video:
How can I clone my production repository?
If your repository is on a Platinum plan or an Enterprise plan and if you're an Administrator, you can clone your repository directly from the UI (see how in the above video). If you can't see that option in your repository settings, please reach out to your Account manager.
Should I use Environments for staging content?
No, these environments are only meant for updating the codebase or custom types without jeopardizing the production repository. We recommend that content editors stay on the production repository to author new content and use Releases and Previews to check the presentation on the front-end before publishing it.
Using Releases and Previews is simplifying the authoring experience: no need to migrate content from one Environment to another (see limitations of the Import/Export tool for moving content from a repository to another).
How to promote Custom Type changes from the development Environment to production?
To update an existing custom type, simply copy its JSON structure from the "JSON Editor" tab in the development environment and paste it in its equivalent custom type in the production repository.
Can I use "development" endpoints for Integration Fields?
Yes. Read this to understand how Integration Fields (IF) and Environments work together and how you can configure a different IF endpoint on your cloned environments.
What happens if I delete/update a field when promoting a custom type from development to production?
You cannot rename the API ID of a field. More details here.
If you want to remove a field, have a look at what happens here.
If you're switching a "Rich text" field type into "Key text", read more about the behaviour here.