 Quando as bases de código crescem e várias pessoas contribuem, é importante manter a qualidade do código alta. Uma das ferramentas para melhorar as habilidades da equipe e ao mesmo tempo evitar que mudanças de código introduzam bugs críticos, é usar revisões de código. Garantimos que a pessoa certa ou grupo de pessoas, sejam imediatamente notificados para revisar certas mudanças permitindo o CodeOwner. Com o CodeOwner, podemos definir quem é responsável pela base do código e atribuir revisores na Merge Request. Vamos considerar este exemplo. Sou desenvolvedora e quero contribuir neste arquivo. Adiciono doxtrinz a esta função e trio a Merge Request. Na visualização da Merge Request, um grupo de aprovadores foi criado automaticamente. Uma pessoa e um grupo de pessoas foram mapeados automaticamente para revisar minha mudança. Como desenvolvedora, enquanto a base de código cresce, não me preocupo em encontrar o caminho, a pessoa ou o grupo certo. Os CodeOwner fazem isso. Vamos inverter e digamos que agora sou uma das CodeOwners. Para configurar, crio um arquivo CodeOwner sem extensão. Precisamos de uma sintaxe específica e diferentes combinações disponíveis, além de maneiras de mantê-la legível e fácil de entender. Por exemplo, organizar CodeOwner, colocando-os em sessões e nomeando cada sessão entre colchetes. Essa pessoa rever as alterações no arquivo Rhythm, que faz parte da documentação. Inserimos o nome do arquivo e do usuário do membro da equipe, definindo o aprovador da Merge Request. Na linha 6, temos um caso interessante. E se eu não quiser uma única linha, mas um diretório. Ou não uma pessoa, mas um subgrupo inteiro do meu projeto. Para serem aprovadores e analisar uma Merge Request? Nesse caso, insiro o caminho do diretório ao lado do grupo e do subgrupo designados como revisores, para fazer alterações nos arquivos deste diretório. Este exemplo mostra que não importa a localização no projeto. O usuário será automaticamente atribuído, como aprovador e CodeOwner de qualquer arquivo com uma extensão Python. Vamos voltar ao exemplo da Merge Request. Podemos ver essa configuração no widget do CodeOwner. Vamos adicionar CodeOwner para testar esse projeto. Podemos criar nova sessão para testes. Quero selecionar todo o diretório. E ao lado vou atribuir este usuário como CodeOwner. Ao usar o CodeOwner, evita sacrificar o Time to Market. Ajudando a manter um processo de aprovações e revisões de código simples e eficiente, sabendo quem é responsável pelos itens das bases de código.