Your browser does not support iframes.
Compatibility Matrix
All SCM providers currently require the native executable to be installed on the server where the Sonar analysis will run. For example, for projects hosted on a Subversion repository and analysed on a Jenkins server, svn executable must be available on the Jenkins server (and its slaves if any).
Plugin | 1.2 | 1.3 | 1.4 | 1.5 |
---|---|---|---|---|
Subversion (1.6+ client) | ||||
Jazz RTC | ||||
MKS Integrity | ||||
Visual SourceSafe | ||||
CM Synergy | ||||
- supported
- tested by users
- not tested
- not implemented
Features
This plugin collects SCM information on each source file to display in the source code viewer the last committer on lines.
Usage & Installation
- Install from Update Center or download the JAR into the directory /extensions/plugins/
- Restart Sonar.
Set the SCM URL of your project (see SCM URL Format): sonar.scm.url properties. For Git, SVN and Mercurial, the SCM provider is automatically discovered, so what's defined in this property is not taken into account.
- At project level, go to Configuration > Settings > SCM Activity and specify User (
sonar.scm.user.secured
) and Password (sonar.scm.password.secured
) if needed; if specified thendeveloperConnection
will be used, otherwiseconnection.
- Launch a new quality analysis and the metrics will be fed.
Performance
The first analysis of a project with version 1.4 will last longer than the subsequent analyses.
Known Issues and Limitations
Subversion "Server certificate verification failed: issuer is not trusted"
Add following to .subversion/servers
:
[global] ssl-authority-files = /path/certificate.crt ssl-trust-default-ca = yes
CVS anonymous access not working "org.apache.maven.scm.ScmException: password is required."
Try to set empty password for repository in .cvspass
. For example:
/1 :pserver:anonymous@javacaltools.cvs.sourceforge.net:2401/cvsroot/javacaltools A
I use Git and the annotated sources sometimes display a wrong/old author name
The plugin uses 'git blame
' command to find out the author of each line. Because a user can commit with different author name/email, it is advised to have a .mailmap
file at the root of the repository. This file is used by 'git blame
' to find out canonical name/email of each user.
See http://git-scm.com/docs/git-blame#_mapping_authors
Changelog