If you have some content published on an environment (for example, ‘testing’ or ‘staging’), and you want to publish the same content on another environment (say ‘production’) without impacting any content or code, you can do this in two possible ways.
The first recommended way is to create and use multiple environments. For example, you can create two environments in your stack, let's say "development" and "production". In this case, "development" will serve as a test environment and "production" is the environment where your feature or content will be available for users.
When using multiple environments, you can first publish the content on the development environment. Here, you can verify that all changes that you have made are correct and there are no errors. Your production or other environments will not be affected by this action.
Once you are satisfied, then you can publish the content on the production environment. Another alternative is to use Workflows as it will help you restrict users from publishing to the "Production" environment and only authorized users can make content live or public. This also gives you an opportunity to verify content before it goes live.
If you want to maintain separate content types and entries, you can use the multiple stack option. In this way, all the content types and entries will be isolated from each other. You can use a script, in this case, to enable our Content Management API calls to reflect the changes on each stack using Webhooks and the REST API calls.