The puppet module for puppet consists of an upstream available Source Control Management system enabling the management of puppet through puppet, branched for three different environments:
development
This is the development branch were changes follow up quickly.
testing
This is the testing branch where series of changes applied to development move before they go to production, and a number of tests can be performed to ensure everything works as expected and before the module is considered production-worthy.
production
This is the production branch where all changes have gone through a series of tests during their time in testing, tested for all use-cases. See also: Section 11.6, “Version Control”.