Revisor de códigos

O processo Desenvolvimento > Revisão de códigos > Revisor de códigos tem o objetivo de ser uma ferramenta auxiliar dos profissionais responsáveis por revisar alterações de códigos de outros desenvolvedores. Ela não tem o objetivo de substituir ferramentas mais adequadas para esse fim, como o Git, nem permite o nível de controle e discussão de sistemas como o GitHub, GitLab e Azure Repos.

Sempre que for possível, os códigos devem ser armazenados em repositórios Git gerenciados por soluções que permitam o controle de alterações por meio de pull/merge requests. Os arquivos contidos nesses repositórios devem ser revisados nessas ferramentas e devem ser publicados na Virtual File System por meio de pacotes JAZ após a revisão.

Apesar do fluxo acima ser considerado o ideal, há diversos arquivos do sistema que hoje não podem ser armazenados fora da Virtual File System, como as definições das classes de dados e configurações. Este processo de revisão foi criado para esses arquivos, que ainda não podem ter um controle mais sofisticado de revisão de códigos com uso do Git.

Pré-requisitos

O processo de revisão de códigos deve ser executado em um Engine local e no computador deve estar instalado o WinMerge.

Opções

Na tela inicial do processo, podem ser informadas as seguintes opções:

  • Produtos: restringe a consulta para os arquivos contidos apenas nos produtos ou licenças informadas.
  • Arquivos: determina os arquivos específicos que devem ser revisados.
  • Usuários: exibe apenas os arquivos que tiveram ao menos uma alteração dos usuários informados. As alterações realizadas por outros usuários nestes arquivos também serão exibidas, pois o processo exige que a revisão seja feita considerando todas as alterações até a versão revisada.
  • Caminho WinMerge: caminho completo ao executável “WinMergeU.exe”. O sistema tentará preencher automaticamente este campo com base nos diretórios padrões de instalação do WinMerge.
  • Incluir chaves positivas: por padrão, o processo de revisão exibe apenas os arquivos de chave negativa, associados aos produtos do sistema ou Custom. Esta opção altera esse comportamento, permitindo que o processo seja utilizado para revisar alterações em arquivos de chave positiva, que existem apenas na base de dados corrente.
  • Período de alterações: data inicial e final de consulta das alterações.

Há diversas formas válidas de utilizar este processo. No entanto, para acompanhar todas as alterações realizadas em uma base de dados, é recomendado que após a seleção de um período inicial, o período de consulta das alterações seja atualizado apenas quando todos os arquivos pendentes sejam marcados como revistos. Uma vez que não haja mais pendências de revisão, a data inicial do período de alterações deve ser atualizada para a data atual. Dessa forma, no próximo uso do processo, o revisor verá apenas as alterações realizadas dessa data até a atual.

Importante: por conveniência, alterações nos arquivos com extensões “.jaz” e “.min.js” são ignoradas, pois esses arquivos são gerados automaticamente a partir de outros códigos fontes.

Revisões pendentes

Após informar as opções, será apresentada uma grade com todos os arquivos com revisão pendente. Essa grade apresentará resumidamente o caminho e o tipo do arquivo, os usuários que modificaram o arquivo e a data da última alteração realizada nele.

A revisão pode ser realizada por meio dos botões:

  • Revisar: o WinMerge será aberto exibindo todas as alterações realizadas no período e que não foram marcadas como revistas. Ao finalizar o WinMerge, será perguntado ao usuário se ele deseja marcar o arquivo como revisto.
  • Apenas marcar como revisto: as diferenças não são apresentadas para o usuário e o arquivo é marcado como revisto, permitindo que ele não seja mais exibido como pendente até que uma nova alteração ocorra nele. Essa opção é útil para marcar arquivos que foram revistos manualmente ou que são gerados automaticamente por meio de outras ferramentas.

Para visualizar o arquivo a ser revisado, há também o link “Abrir no VS Code” disponível nos atalhos do campo “Arquivo”.

Arquivos ignorados

Na classe “Configuração > Revisão de códigos” é possível criar um arquivo com extensão “.config” permitindo configurar filtros que restringem os arquivos que devem ser revisados. As seguintes propriedades são aplicadas a este processo:

  • ignoredFileExtensions
  • ignoredMimeTypes
  • ignoredVfsFiles
  • ignoredVfsDirectories