Как работает sonar: sonar?
мы хотим использовать SonarQube с некоторым инструментом CI в нашем проекте. Url сервера Sonar настроен в main пом.в XML.
в проекте есть несколько членов команды. Итак, что происходит, когда один член команды выполняет сонар:сонар локально с его локальными изменениями, затем другой член команды выполняет сонар:сонар С его локальными изменениями, а затем кто-то выполняет сонар:сонар из инструмента CI (он настроен для анализа источника код в репозитории Git)?
будет SonarQube ошибок отображения, связанных членами группы локальных изменений? Что делать, если есть различия между локальным исходным кодом членов команды и исходным кодом в репозитории Git?
2 ответов
sonar:sonar
осуществляет анализ и отправляет результаты на сервер, предполагая, что вы работаете с маркер учетной записи, имеющей соответствующие полномочия.
разработчики не должен запускайте этот тип анализа локально, чтобы проверить их изменения. Вместо этого они должны использовать SonarLint а может быть анализ запроса pull (в зависимости от вашей инфраструктуры).
( EDIT: анализ запроса тяги был устаревшим и заменен более полнофункциональным анализа($).)
чтобы немного расширить, почему разработчики не должны использовать sonar:sonar
локально: он обновляет центральный сервер в последней сохраненной wins манере. Итак, если вы отредактировали A.java и проанализировал его локально перед фиксацией, и я переименовал A.java к B.java и сделал аналогичный предварительный локальный анализ... что видно на сервере SonarQube? Зависит от того, кто сохранял / анализировал последним.
sonar:sonar
следует запускать только из вашего инструмента CI на зарегистрированном коде, который уже виден всей команде.Как вы сказали, что url-адрес сервера sonar настроен в mail pom.xml и команда вашего члена команды run sonar:sonar на локальном компьютере. Но из-за того, что все ссылаются на один и тот же url-адрес сервера. Так что все изменения отразятся на общем проекте. Если вы хотите увидеть разницу отдельно для каждого члена команды. затем либо вам нужно обновить имя проекта, отличное друг от друга. Другой мудрый вы увидите последний там.
Сонар дает вам разницу в графическом виде. как ну, как вы можете сравнить две сборки тоже.
во-вторых, если у пользователя есть разрешение администратора, только тогда они могут обновить сервер sonar.