2014-09-26 1 views
1

У нас есть сценарий, в котором мы получили проект .net, и у него есть старый код.Пропуск старого кода с проверки кода в сонаре

Теперь мы начали внедрять валидацию сонарного кода на этом, и, к сожалению, у нас появилось много вопросов проверки из старого кода, который не написан нами.

Таким образом, согласно условиям соглашения, мы не должны устранять эти проблемы.

Старый и текущий код доступен в репозитории SVN.

Есть ли какая-либо возможность пропустить старый код на основе пересмотра SVN и выполнить проверку кода только в начале изменений базовой линии?

+0

Разве вы когда-либо находили хороший способ сделать это? – pvgoddijn

ответ

1

Единственный хороший способ сделать это на данный момент заключается в следующем:

  • анализировать существующий код базы в SonarQube
  • установить версию на нем (в разделе «Конфигурация проекта> История»), например, «BASE_LINE»
  • указать эту версию в дифференциальных периодов, так что все ваши будущие анализы по сравнению с этим базовым
+0

На самом деле мы попытались установить исходный код и удалить существующие проблемы, отметив проблемы как ложные, используя следующие запросы. ИСПОЛЬЗОВАНИЕ XYZ SELECT [ID] [Ки] [component_id] , [root_component_id] , [состояние] [разрешение] FROM [XYZ]. [DBO]. [Вопросы], где [root_component_id] = 64421 и статус = 'ОТКРЫТО' GO -------------------------------------- ------------------------------------------ –

+0

Запрос информации ИСПОЛЬЗОВАНИЕ XYZ go начать транзакцию UPDATE [XYZ]. [Dbo]. [Issues] SET [status] = 'RESOLVED', [resolution] = 'FALSE-P OSITIVE» WHERE [root_component_id] = 64421 и статус = 'Open' Откат транзакции GO --------------------------- -------------------------------------------------- --- UPDATE [XYZ]. [DBO]. [вопросы] SET [состояние] = 'ПОСТАНОВИЛИ', [Разрешение] = 'Ложноположительные' WHERE [root_component_id] = 64421 и статус = 'ОТКРЫТО' ----------------------------------------------- ------------------------- Это приведет к тому, что все записи будут отображаться как «RESOLVED» и разрешение «FALSE-POSITIVE». –

+0

Однако, если старый файл изменен, вместо того, чтобы делать покрытие кода для нового кода, он публикует также проблемы для старого кода в этом файле. –

0

На самом деле мы пытались базовой линии кода и удалить существующие проблемы, пометив проблемы как ложные, используя следующие запросы. USE XYZ

   SELECT [id] 
,[kee] 
     ,[component_id] 
,[root_component_id]  
     ,[status] 
,[resolution]   
       FROM [XYZ].[dbo].[issues] where [root_component_id]= 64421 and status = 'OPEN' 
       GO 

Обновление запроса

USE XYZ

идти начать транзакцию

UPDATE [XYZ]. [DBO]. [Вопросы] SET
[ status] = 'RESOLVED' , [resolution] = 'FALSE-POSIT IVE»

WHERE [root_component_id] = 64421 и статус = 'ОТКРЫТО' откат транзакции
GO


UPDATE [XYZ]. [DBO]. [Вопросы] SET
[состояние] = 'ПОСТАНОВИЛИ' , [Разрешение] = 'Ложноположительные'

WHERE [root_component_id] = 64421 и статус = 'ОТКРЫТО'


Это приведет к тому, что все записи будут отображаться как «RESOLVED» и разрешение «FALSE-POSITIVE».

Однако, если старый файл изменен, вместо того, чтобы покрывать код для нового кода, он публикует также проблемы для старого кода в этом файле.

Итак, я думаю, что был бы другой способ базового кода, так что, хотя старые файлы будут изменены, он будет выполнять покрытие кода только поверх базовой линии. Есть ли альтернативный способ, доступный с использованием номеров версий SVN и базового кода.

+0

Кажется, что это (больше не работает) (вы получили обратно), вы нашли какое-то другое решение? – pvgoddijn

Смежные вопросы