Overview
Direct experimentation on main risks mixing unfinished work with the project's central version. Branching provides an intermediate development space.
A branch supports three forms of control:
- Isolation: Changes remain separate from main until deliberately merged.
- Attribution: Commits belong to the branch on which they were created.
- Context switching: Git changes the working files to match the selected branch.
This makes it possible to develop a feature, test an approach, or prepare a release without forcing those changes into the central branch immediately.