Index: src/main/java/org/apache/maven/changelog/ChangeLogReport.java =================================================================== --- src/main/java/org/apache/maven/changelog/ChangeLogReport.java (revision 948) +++ src/main/java/org/apache/maven/changelog/ChangeLogReport.java (working copy) @@ -114,14 +114,21 @@ private String outputEncoding; /** - * The URL to view the scm. Basis for external links from the generated report. + * The URL to view the scm. Fallback basis for external links from the generated report. * * @parameter expression="${project.scm.url}" * */ private String scmUrl; - /** + /** + * The URL to view file details in the scm. Primary basis for external links for the generated report. + * + * @parameter + */ + private String displayFileDetailUrl; + + /** * The Maven Project Object * * @parameter expression="${project}" @@ -670,9 +677,13 @@ { String linkFile = null; String linkRev = null; - - if ( rpt_Repository != null ) + + if ( displayFileDetailUrl != null) { + linkFile = displayFileDetailUrl + name; + } + else if ( rpt_Repository != null ) + { if ( connection.startsWith( "scm:perforce" ) ) { String path = getAbsolutePath( rpt_Repository, name ); @@ -684,6 +695,10 @@ String path = getAbsolutePath( rpt_Repository, name ); linkFile = path + rpt_OneRepoParam; } + else if ( connection.startsWith( "scm:svn" ) ) + { + linkFile = rpt_Repository + rpt_OneRepoParam + name; + } else if ( connection.indexOf( "cvsmonitor.pl" ) > 0 ) { String module = rpt_OneRepoParam.replaceAll("^.*(&module=.*?(?:&|$)).*$", "$1" );