Ir para o conteúdo
Totalmente local

Validador de CODEOWNERS

Verifica um ficheiro CODEOWNERS para padrões inválidos, proprietários em falta e regras que nunca podem ter efeito.

Entrada
Ficheiros a verificar (um por linha)
Saída

Validador de CODEOWNERS

Cole o conteúdo de um ficheiro CODEOWNERS e esta ferramenta verifica-o como um revisor o faria, linha a linha. Marca padrões que não podem ser interpretados, nomes de utilizadores e equipas que estão escritos incorretamente, endereços de correio mal formados, e regras que silenciosamente se duplicam ou ocultam uma à outra — incluindo uma regra enterrada acima de um padrão catch-all posterior que silenciosamente assumiu todo o caminho que ela costumava possuir.

Escolha a plataforma do seu repositório — GitHub, GitLab ou Bitbucket — já que os cabeçalhos de secção opcionais do GitLab ("[Frontend]") não são reconhecidos nas outras duas, e um ficheiro escrito para uma plataforma pode silenciosamente não fazer nada noutra. Ative "Reportar ficheiros sem proprietário" para assinalar qualquer caminho testado que nenhuma regra cobre, "Ordenar resultados pela ordem das regras" para agrupar os resultados do segundo campo pela linha que os decidiu em vez da ordem em que os colou, e "Mostrar número de regras por proprietário" para ver rapidamente quem possui a maior parte do ficheiro.

Cole uma lista de caminhos de ficheiros no segundo campo para testá-los contra as regras: CODEOWNERS utiliza a mesma lógica "última regra correspondente ganha" que .gitignore, portanto a ferramenta reporta exatamente qual a linha e qual o proprietário que se aplicam a cada caminho — não apenas se um padrão parece válido. Tanto os terminadores de linha Windows como Unix são tratados da mesma forma, e o relatório mantém-se um ficheiro CODEOWNERS válido comentado que pode ler diretamente do resultado.

Tudo funciona localmente no seu navegador. O seu ficheiro e os caminhos que testa nunca são carregados em qualquer lugar, o que importa para um ficheiro que pode listar estrutura privada de equipas e repositórios. Copie o resultado anotado, descarregue-o como ficheiro .txt, ou envie-o de volta para a entrada para corrigir um problema e verificar novamente.

FAQ

O que é uma regra que "nunca pode ter efeito"?
Dois casos: uma duplicação exata de um padrão anterior (a linha posterior sempre ganha, portanto a anterior é peso morto), e um padrão catch-all amplo como "*" colocado após uma regra mais específica, que silenciosamente substitui tudo acima dela.
Como é que a ferramenta decide qual proprietário se aplica a um caminho?
Da mesma forma que GitHub, GitLab e Bitbucket o fazem: ela percorre as regras em ordem de ficheiro e o último padrão que corresponde a um caminho dado ganha, mesmo que uma regra anterior mais específica também correspondesse.
Por que é que a escolha da plataforma importa se a sintaxe parece a mesma?
A maioria da sintaxe CODEOWNERS é partilhada, mas as funcionalidades apenas do GitLab como cabeçalhos de secção são simplesmente texto inerte no GitHub e Bitbucket — a ferramenta marca-os para que você note antes de um requisito de revisão silenciosamente falhar em aplicar-se.
Verifica se os nomes de utilizadores ou equipas realmente existem?
Não — apenas verifica se estão bem formados (caracteres válidos, uma "/" para uma equipa, um endereço de correio com aspecto real). Confirmar se um nome de utilizador ou equipa ainda existe na sua organização requer verificação contra o próprio GitHub, GitLab ou Bitbucket.
O meu ficheiro CODEOWNERS é carregado em algum lugar?
Não. A validação funciona inteiramente no seu navegador — o ficheiro e qualquer caminho que teste nunca sai do seu dispositivo.