Details
-
Type:
Improvement
-
Status:
Closed
-
Priority:
Critical
-
Resolution: Fixed
-
Affects Version/s: None
-
Fix Version/s: SCM-ACTIVITY-1.2
-
Component/s: SCM Activity
-
Labels:None
-
Number of attachments :
Description
Every time a project is analyzed blame information loaded from SCM for all files, but I believe that we can load this information only for changed files and this should improve performance.
Following algorithm can be implemented :
- Use TimeMachine to determine what was analysed previously
- Use SCM ChangeLogCommand to determine list and number of added/modified files. This is also allows to compute new metric - number of commits (see
SONARPLUGINS-348). There are also following problems with ChangeLogCommand :- it returns list of files, but location are relative to repository root (tested on svn and git)
- svnjava provider implements it only for date range
- for svn it may return files not in current module
- Use SCM BlameCommand to determine authors of each added/modified files and TimeMachine for unchanged files
Issue Links
- is related to
-
SONARPLUGINS-877
"Last commit" metric wrongly computed
-
-
SONARPLUGINS-348
Add commit count for past periods
-
Initial implementation added in r2933. First tests showed significant gain in performance at least for SVN.