- Never commit to
develop- it is protected. All changes go on abugfix/...orfeature/...branch (snake_case names, e.g.bugfix/looping_midi_note_off_map) - CI shortcut: including
quickanywhere in the branch name (convention: a_quicksuffix, e.g.feature/new_fade_curves_quick) makes GitHub CI skip all 12 Debug matrix jobs (they no-op in seconds), roughly halving CI time. Release, ASan and static-analysis jobs still run. Use it for iterating on a branch, but do a final push on a normally-named branch (or rename before merging) so full Debug coverage runs before the PR intodevelop - Avoid the word
quickin normally-named branches - the CI check is a substring match and would silently skip Debug CI
- Use clear, descriptive messages
- Prefix with component (e.g. "MIDI: Fixed note-off handling", "Audio: Improved latency")