Branch Deploys are how @Netlify delivers multiple environments.
For example, to create a staging environment, you create a branch called "staging" and push it to your repo. Netlify runs your build just like normal, but deploys it to a URL called "http://staging--yoursite.netlify.app"