Overview
A branch is an independent line of development inside a repository. It lets you make and commit changes without placing them immediately into the main line of the project.
The main branch represents the central project line. A development, staging, or feature branch provides a separate place to experiment, build, test, and review work before combining it with main.