Suggests a minimal set of code owners to review a commit.
Usage: fx min-owners [-v] [--all] [--include-root] [--author EMAIL] [--branch BRANCH] [REV]
Looks up the owners of each file changed in REV (a commit or a range like
main..HEAD, default HEAD) using Gerrit's code-owners plugin, then finds the
fewest owners who together cover every file. Run it from inside the git repo
that the commit belongs to, e.g. vendor/google.
Owners come from OWNERS files on the BRANCH branch, so OWNERS changes in
the commit itself aren't taken into account.
If more than 5 reviewers are needed, it points to the docs for asking for
an owners override.
Ties between equally good owners are broken randomly to spread out review
load. The randomness is seeded by today's date and the commit author, so
repeated runs on the same day give the same answer. (Very large changes
fall back to a simpler search that doesn't do this.)
Owners whose calendar says they're out of office, and who won't be back
within 4 hours, are only suggested for files that nobody else can approve.
This check uses the prebuilt `luci-auth` (or one on PATH), which works
without logging in on cloudtops and needs `luci-auth login -scopes-gerrit`
elsewhere; without it, the check is skipped with a note.
Flags:
-v, --verbose List the files each owner covers
--all List every smallest set of owners instead of just one
--include-root Consider root OWNERS members for every file, not just
for files with no other owners
--author EMAIL Email that gets implicit approval (default: the commit
author); set this if your git email differs from your
Gerrit account's
--branch BRANCH Branch whose OWNERS files to use (default: main)