{"meta":{"title":"Aprimorando a qualidade do código do repositório","intro":"Avalie e corrija problemas de qualidade de código detectados em seu branch padrão para que você possa melhorar a qualidade da base de código. À medida que você progride, você verá a classificação de qualidade do código do repositório aumentar como resultado.","product":"Qualidade de segurança e código","breadcrumbs":[{"href":"/pt/enterprise-cloud@latest/code-security","title":"Qualidade de segurança e código"},{"href":"/pt/enterprise-cloud@latest/code-security/tutorials","title":"Tutorials"},{"href":"/pt/enterprise-cloud@latest/code-security/tutorials/improve-code-quality","title":"Melhorar a qualidade do código"},{"href":"/pt/enterprise-cloud@latest/code-security/tutorials/improve-code-quality/improve-your-codebase","title":"Melhorar sua base de código"}],"documentType":"article"},"body":"# Aprimorando a qualidade do código do repositório\n\nAvalie e corrija problemas de qualidade de código detectados em seu branch padrão para que você possa melhorar a qualidade da base de código. À medida que você progride, você verá a classificação de qualidade do código do repositório aumentar como resultado.\n\n> \\[!NOTE]\n> GitHub Code Quality está atualmente em versão prévia pública e sujeito a alterações.\n> Durante versão prévia pública, Code Quality não será cobrado, embora as verificações de Code Quality consumirão GitHub Actions minutos.\n\n## Introdução\n\nEste tutorial orienta você a analisar GitHub Code Quality , priorizar e corrigir problemas de integridade do código em seu repositório, ajudando você a reduzir sistematicamente a dívida técnica, melhorar a confiabilidade e a manutenção e comunicar seu impacto aos stakeholders.\n\n### Pré-requisitos\n\n* ```\n          Code Quality está habilitado para seu repositório. Confira [AUTOTITLE](/code-security/code-quality/how-tos/enable-code-quality).\n  ```\n* Se você estiver habilitando GitHub Code Quality pela primeira vez, verifique se esperou alguns minutos após a habilitação para que uma análise completa CodeQL do branch padrão seja concluída.\n\n## 1. Avaliar a integridade geral do código do repositório\n\n1. Navegue até a **<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-shield\" aria-label=\"shield\" role=\"img\"><path d=\"M7.467.133a1.748 1.748 0 0 1 1.066 0l5.25 1.68A1.75 1.75 0 0 1 15 3.48V7c0 1.566-.32 3.182-1.303 4.682-.983 1.498-2.585 2.813-5.032 3.855a1.697 1.697 0 0 1-1.33 0c-2.447-1.042-4.049-2.357-5.032-3.855C1.32 10.182 1 8.566 1 7V3.48a1.75 1.75 0 0 1 1.217-1.667Zm.61 1.429a.25.25 0 0 0-.153 0l-5.25 1.68a.25.25 0 0 0-.174.238V7c0 1.358.275 2.666 1.057 3.86.784 1.194 2.121 2.34 4.366 3.297a.196.196 0 0 0 .154 0c2.245-.956 3.582-2.104 4.366-3.298C13.225 9.666 13.5 8.36 13.5 7V3.48a.251.251 0 0 0-.174-.237l-5.25-1.68ZM8.75 4.75v3a.75.75 0 0 1-1.5 0v-3a.75.75 0 0 1 1.5 0ZM9 10.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z\"></path></svg> Security and quality** aba do seu repositório e, em seguida, em \"<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-code-review\" aria-label=\"code review\" role=\"img\"><path d=\"M1.75 1h12.5c.966 0 1.75.784 1.75 1.75v8.5A1.75 1.75 0 0 1 14.25 13H8.061l-2.574 2.573A1.458 1.458 0 0 1 3 14.543V13H1.75A1.75 1.75 0 0 1 0 11.25v-8.5C0 1.784.784 1 1.75 1ZM1.5 2.75v8.5c0 .138.112.25.25.25h2a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h6.5a.25.25 0 0 0 .25-.25v-8.5a.25.25 0 0 0-.25-.25H1.75a.25.25 0 0 0-.25.25Zm5.28 1.72a.75.75 0 0 1 0 1.06L5.31 7l1.47 1.47a.751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018l-2-2a.75.75 0 0 1 0-1.06l2-2a.75.75 0 0 1 1.06 0Zm2.44 0a.75.75 0 0 1 1.06 0l2 2a.75.75 0 0 1 0 1.06l-2 2a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L10.69 7 9.22 5.53a.75.75 0 0 1 0-1.06Z\"></path></svg> Qualidade do código\", clique em **Descobertas padrão**.\n2. A visão geral no painel de controle \"Descobertas padrão\" fornece uma avaliação imediata do estado do seu branch padrão hoje:\n\n   * ```\n          **A classificação de manutenção** reflete a presença e a gravidade dos achados para código morto, duplicação, complexidade, documentação ausente e falha ao seguir as práticas recomendadas.\n     ```\n   * ```\n          **A classificação de confiabilidade** reflete a presença e a gravidade das descobertas para correção, desempenho, tratamento de erros, simultaneidade e acessibilidade do código.\n     ```\n\n   ![Captura de tela das classificações de qualidade de código na exibição \"Descobertas padrão\" para Code Quality.](/assets/images/help/code-quality/all-findings-overview-repo.png)\n\n## 2. Identificar e priorizar as descobertas mais impactantes\n\nNa visão \"Descobertas padrão\", você verá a lista de resultados da última varredura realizada por Code Quality no branch padrão do repositório. Essas descobertas são:\n\n* Agrupado por **regra**, para que você possa ver quais tipos de problema afetam mais sua base de código.\n* Atribuído um nível de **severidade** (\"Erro\", \"Aviso\", \"Observação\").\n\n### Foco nos achados de alta severidade\n\nUse os **filtros** de painel para se concentrar primeiro nos resultados de severidade mais alta (\"Erros\") e examinar quais regras geram mais problemas.\n\n![Captura de tela mostrando os filtros do painel para a exibição \"Descobertas padrão\".](/assets/images/help/code-quality/standard-findings-filters.png)\n\nPara melhorar a classificação de confiabilidade ou manutenção do repositório, você deve resolver (corrigir ou descartar) todas as descobertas com o nível de severidade mais alto para essa métrica.\n\nPor exemplo, para melhorar a métrica de \"Confiabilidade\" do repositório de **Precisa de melhorias** para **Razoável**, você precisaria abordar e resolver todas as **descobertas de nível de erro** que impactam a confiabilidade. Se você tiver uma ou mais descobertas no nível de erro, sua classificação não poderá ser maior do que \"Precisa melhorar\". Confira [Referência de métricas e classificações](/pt/enterprise-cloud@latest/code-security/code-quality/reference/metrics-and-ratings).\n\n## 3. Investigar um grupo de descobertas e entender o contexto\n\nDepois de identificar uma regra com vários resultados que deseja abordar, você pode investigar mais para entender os problemas subjacentes.\n\n1. Clique no nome da regra para acessar uma exibição detalhada de todos os resultados dessa regra.\n\n   ![Captura de tela mostrando uma regra na exibição \"Descobertas padrão\". O nome da regra é realçado em laranja escuro.](/assets/images/help/code-quality/click-rule-name.png)\n\n2. Clique **em Mostrar mais** e, em seguida, examine a explicação da regra, qual é a correção recomendada, dando suporte a exemplos de código e referências.\n\n   ![Captura de tela mostrando os resultados de uma regra de qualidade de código. O texto \"Mostrar mais\" está realçado em laranja escuro.](/assets/images/help/code-quality/click-show-more.png)\n\n## 4. Escolha as opções de correção\n\nAvalie todos os achados realçados quanto à validade, ao impacto e ao risco. Para melhorar sua classificação de qualidade, você precisa resolver cada descoberta optando por corrigi-la ou descartá-la.\n\n### Gerar uma correção automática\n\nSe a conclusão parecer válida e relevante para sua base de código, você poderá gerar uma correção sugerida.\n\n1. À direita de um achado individual, clique em **<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-copilot\" aria-label=\"copilot\" role=\"img\"><path d=\"M7.998 15.035c-4.562 0-7.873-2.914-7.998-3.749V9.338c.085-.628.677-1.686 1.588-2.065.013-.07.024-.143.036-.218.029-.183.06-.384.126-.612-.201-.508-.254-1.084-.254-1.656 0-.87.128-1.769.693-2.484.579-.733 1.494-1.124 2.724-1.261 1.206-.134 2.262.034 2.944.765.05.053.096.108.139.165.044-.057.094-.112.143-.165.682-.731 1.738-.899 2.944-.765 1.23.137 2.145.528 2.724 1.261.566.715.693 1.614.693 2.484 0 .572-.053 1.148-.254 1.656.066.228.098.429.126.612.012.076.024.148.037.218.924.385 1.522 1.471 1.591 2.095v1.872c0 .766-3.351 3.795-8.002 3.795Zm0-1.485c2.28 0 4.584-1.11 5.002-1.433V7.862l-.023-.116c-.49.21-1.075.291-1.727.291-1.146 0-2.059-.327-2.71-.991A3.222 3.222 0 0 1 8 6.303a3.24 3.24 0 0 1-.544.743c-.65.664-1.563.991-2.71.991-.652 0-1.236-.081-1.727-.291l-.023.116v4.255c.419.323 2.722 1.433 5.002 1.433ZM6.762 2.83c-.193-.206-.637-.413-1.682-.297-1.019.113-1.479.404-1.713.7-.247.312-.369.789-.369 1.554 0 .793.129 1.171.308 1.371.162.181.519.379 1.442.379.853 0 1.339-.235 1.638-.54.315-.322.527-.827.617-1.553.117-.935-.037-1.395-.241-1.614Zm4.155-.297c-1.044-.116-1.488.091-1.681.297-.204.219-.359.679-.242 1.614.091.726.303 1.231.618 1.553.299.305.784.54 1.638.54.922 0 1.28-.198 1.442-.379.179-.2.308-.578.308-1.371 0-.765-.123-1.242-.37-1.554-.233-.296-.693-.587-1.713-.7Z\"></path><path d=\"M6.25 9.037a.75.75 0 0 1 .75.75v1.501a.75.75 0 0 1-1.5 0V9.787a.75.75 0 0 1 .75-.75Zm4.25.75v1.501a.75.75 0 0 1-1.5 0V9.787a.75.75 0 0 1 1.5 0Z\"></path></svg> Gerar correção**.\n\n2. Analise cuidadosamente o diff da alteração proposta e, se você concordar com ela, clique em **Abrir pull request**.\n\n3. Na caixa de diálogo \"Confirmar correção automática da ramificação\", selecione \"Abrir uma solicitação de pull\" e clique **em Confirmar alteração**.\n\n   > \\[!TIP]\n   > No momento, não é possível gerar correções automáticas para um grupo de descobertas em lote.\n   >\n   > Se você quiser abordar várias descobertas com uma única solicitação de pull, repita as etapas 1 e 2 acima e, na caixa de diálogo \"Confirmar autofixo no branch\", use o nome do branch que você já criou para o primeiro autofixo e selecione \"Abrir solicitação de pull\" e **Confirmar alteração**.\n   >\n   > A correção será adicionada à solicitação de pull de rascunho existente da ramificação.\n\n4. Quando estiver pronto, altere o status da solicitação de pull de \"Rascunho\" para \"Pronto para revisão\" e examine cuidadosamente as alterações propostas. Aguarde até que as verificações de CI e os testes automatizados sejam concluídos e aprovados antes de mesclar a solicitação de pull.\n\n### Ignorar uma descoberta\n\nVocê pode descartar um achado se ele não for relevante ou acionável no contexto de sua base de código. Os motivos comuns para ignorar uma descoberta incluem:\n\n* A descoberta está no código legado que não é mais suportado.\n* É uma exceção conhecida para os padrões de codificação da sua equipe.\n* É um falso positivo que não representa um risco real de qualidade.\n\nIgnorar alertas irrelevantes mantém suas verificações de qualidade focadas em problemas significativos.\n\n1. Para ignorar um resultado, clique **<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-shield-slash\" aria-label=\"Dismiss\" role=\"img\"><path d=\"M8.533.133a1.75 1.75 0 0 0-1.066 0l-2.091.67a.75.75 0 0 0 .457 1.428l2.09-.67a.25.25 0 0 1 .153 0l5.25 1.68a.25.25 0 0 1 .174.239V7c0 .233-.008.464-.025.694a.75.75 0 1 0 1.495.112c.02-.27.03-.538.03-.806V3.48a1.75 1.75 0 0 0-1.217-1.667L8.533.133ZM1 2.857l-.69-.5a.75.75 0 1 1 .88-1.214l14.5 10.5a.75.75 0 1 1-.88 1.214l-1.282-.928c-.995 1.397-2.553 2.624-4.864 3.608-.425.181-.905.18-1.329 0-2.447-1.042-4.049-2.356-5.032-3.855C1.32 10.182 1 8.566 1 7Zm1.5 1.086V7c0 1.358.275 2.666 1.057 3.86.784 1.194 2.121 2.34 4.366 3.297.05.02.106.02.153 0 2.127-.905 3.439-1.982 4.237-3.108Z\"></path></svg>**.\n2. A descoberta desaparecerá da lista de descobertas abertas. Você ainda pode revisar e reabrir as conclusões ignoradas na guia \"Ignoradas\", na parte superior da página.\n\n## 5. Medir o aprimoramento e comunicar o impacto\n\nApós a conclusão do trabalho de correção, retorne ao painel \"Descobertas padrão\" para examinar as métricas de confiabilidade e manutenção atualizadas.\n\nAo comunicar seu impacto aos stakeholders, realce:\n\n* Qualquer **redução** no número de descobertas para \"Confiabilidade\" ou \"Manutenção\".\n* Qualquer **alteração na classificação** para as classificações de confiabilidade ou de manutenção.\n* Os requisitos que foram atendidos para alcançar a alteração na classificação. Por exemplo, a correção de todos os achados de nível \"Aviso\" fez com que a classificação mudasse de \"Razoável\" para \"Bom\".\n\nUse as melhorias nas classificações de qualidade e a redução no número de descobertas para demonstrar o progresso.\n\n## 6. Impor padrões de qualidade de código para solicitações de pull\n\nCaso ainda não tenha feito isso, configure os limites de qualidade para solicitações de pull para bloquear as alterações na base de código que reduzirão a integridade da base de código. Confira [Definindo limites de qualidade de código para solicitações de pull](/pt/enterprise-cloud@latest/code-security/code-quality/how-tos/set-pr-thresholds).\n\n## Próximas etapas\n\n* Reduza ainda mais a dívida técnica corrigindo descobertas em arquivos alterados recentemente. Confira [Aprimorando a qualidade do código mesclado recentemente com a IA](/pt/enterprise-cloud@latest/code-security/code-quality/tutorials/improve-recent-merges).\n* Forneça comentários sobre GitHub Code Quality na [discussão da comunidade](https://github.com/orgs/community/discussions/177488)."}