# Gerrit Code Review code-owners plugin

This plugin provides support for defining code owners for files in a repository.

If the code-owners plugin is enabled, changes can only be submitted if all
touched files are covered by approvals from code owners.

Also see [resources/Documentation/about.md](./resources/Documentation/about.md).

IMPORTANT: Before installing/enabling the plugin follow the instructions from
the setup guide, see [resources/Documentation/setup-guide.md](./resources/Documentation/setup-guide.md).
