Chapter 3. Git and Environments
When working in a large organization, changes can break things. Every developer will need a sandbox to test their code. A single developer may have to work on two or three issues independently throughout the day but may not apply the working code to any nodes. It would be great if you could work on a module and verify it in a development environment or even on a single node before pushing it to the rest of your fleet. Environments allow you to carve up your fleet into as many development environments as needed. Environments allow nodes to work from different versions of your code. Keeping track of the different versions with Git allows for some streamlined workflows. Other versioning systems can be used, but the bulk of integration in Puppet is done with Git.