All commits and must be reviewed by at least one Melange engineer other than the author before migration to the master branch.
When you feel that your current line of development is ready for review:
git pull --no-rebase --no-commit
Without the --no-commit flag, a pull operation that requires a commit will get an auto-created commit with an auto-generated log message like “Merge branch page-fix”. Because our branch names are ephemeral we suppress the auto-created commit so that we may give any merge commit a message that describes the substance of what is being merged.
git push origin <hex string of commit to be reviewed>:<review branch name>
git push origin <latest reviewed commit hex string, not branch name or other alias>:master
This will either push your specific reviewed commits to master or fail as non-fast-forward (in which case you'll have to merge and undergo further review).
Do not rebase. Rebases cause us to lose review history and chronological ordering of our work. A falsely linear history just isn't worth it.
If a change looks good and needs no comment, just mark it positive and hit the “submit” button. This suppresses the per-commit email thread and cuts down on mailing list noise.
Commits made as part of the release process (“Set new Melange version number...”) are exempt and may be made on master. They should still be reviewed when convenient, though.