This one is clear and concise. [Wayback/Archive] liburing/CONTRIBUTING.md at master · axboe/liburing · GitHub of which some highlights:
…
The main reasons for the rules are:
- Keep the code consistent
- Keep the git repository consistent
- Maintain bisectability
…
No fixup commits! Sometimes people post a change and errors are pointed out in the commit, and the author then does a followup fix for that error. This isn’t acceptable, please squash fixup commits into the commit that introduced the problem in the first place. This is done by amending the fix into the original commit that caused the issue. You can do that with
git rebase -iand arrange the commit order such that the fixup is right after the original commit, and then use ‘s‘ (for squash) to squash the fixup into the original commit. Don’t forget to edit the commit message while doing that, as git will combine the two commit messages into one. Or you can do it manually. Once done, force push your rewritten git history. See reasons 1-3 in the introduction series for why that is.…
A good commit explains the WHY of a commit – explain the reason for this commit to exist. Don’t explain what the code in commit does, that should be readily apparent from just reading the code. liburing commits follow the following format:





