The feature-branch loop
Conventional Commits
Format: type(scope): summary. A consistent prefix makes history scannable and lets tools generate changelogs and version bumps.
Keep your branch up to date
Rebasing replays your commits on top of the latest main, giving a linear history. After rebasing an already pushed branch, push with --force-with-lease, which refuses to overwrite commits you have not seen.