Index: src/main/java/org/apache/maven/report/projectinfo/ScmReport.java
===================================================================
--- src/main/java/org/apache/maven/report/projectinfo/ScmReport.java (revision 819145)
+++ src/main/java/org/apache/maven/report/projectinfo/ScmReport.java (working copy)
@@ -27,6 +27,7 @@
import org.apache.maven.scm.manager.NoSuchScmProviderException;
import org.apache.maven.scm.manager.ScmManager;
import org.apache.maven.scm.provider.cvslib.repository.CvsScmProviderRepository;
+import org.apache.maven.scm.provider.hg.repository.HgScmProviderRepository;
import org.apache.maven.scm.provider.perforce.repository.PerforceScmProviderRepository;
import org.apache.maven.scm.provider.starteam.repository.StarteamScmProviderRepository;
import org.apache.maven.scm.provider.svn.repository.SvnScmProviderRepository;
@@ -260,6 +261,12 @@
linkPatternedText( i18n.getString( "project-info-report", locale, "report.scm.cvs.intro" ) );
sink.paragraph_();
}
+ else if ( isScmSystem( anonymousRepository, "hg" ) )
+ {
+ sink.paragraph();
+ linkPatternedText( i18n.getString( "project-info-report", locale, "report.scm.hg.intro" ) );
+ sink.paragraph_();
+ }
else if ( isScmSystem( anonymousRepository, "perforce" ) )
{
sink.paragraph();
@@ -332,6 +339,13 @@
anonymousAccessCVS( cvsRepo );
}
+ if ( anonymousRepository != null && isScmSystem( anonymousRepository, "hg" ) )
+ {
+ HgScmProviderRepository hgRepo = (HgScmProviderRepository) anonymousRepository
+ .getProviderRepository();
+
+ anonymousAccessMercurial( hgRepo );
+ }
else if ( anonymousRepository != null && isScmSystem( anonymousRepository, "svn" ) )
{
SvnScmProviderRepository svnRepo = (SvnScmProviderRepository) anonymousRepository
@@ -374,6 +388,12 @@
developerAccessCVS( cvsRepo );
}
+ else if ( devRepository != null && isScmSystem( devRepository, "hg" ) )
+ {
+ HgScmProviderRepository hgRepo = (HgScmProviderRepository) devRepository.getProviderRepository();
+
+ developerAccessMercurial( hgRepo );
+ }
else if ( devRepository != null && isScmSystem( devRepository, "perforce" ) )
{
PerforceScmProviderRepository perforceRepo = (PerforceScmProviderRepository) devRepository
@@ -511,7 +531,28 @@
verbatimText( command.toString() );
}
+ // Mercurial
+
/**
+ * Create the documentation to provide an anonymous access with a Mercurial SCM.
+ * For example, generate the following command line:
+ *
hg clone uri
+ * + * @param hgRepo + */ + private void anonymousAccessMercurial( HgScmProviderRepository hgRepo ) + { + sink.paragraph(); + linkPatternedText( i18n.getString( "project-info-report", locale, "report.scm.anonymousaccess.hg.intro" ) ); + sink.paragraph_(); + + StringBuffer command = new StringBuffer(); + command.append( "$ hg clone " ).append( hgRepo.getURI() ); + + verbatimText( command.toString() ); + } + + /** * Create the documentation to provide an developer access with aCVS SCM.
* For example, generate the following command line:
* cvs -d :pserver:username@cvs.apache.org:/home/cvs login
@@ -535,6 +576,28 @@ verbatimText( command.toString() ); } + // Mercurial + + /** + * Create the documentation to provide an developer access with aMercurial SCM.
+ * For example, generate the following command line:
+ * hg clone repo
+ * + * @param hgRepo + */ + private void developerAccessMercurial(HgScmProviderRepository hgRepo) + { + sink.paragraph(); + linkPatternedText( i18n.getString( "project-info-report", locale, "report.scm.devaccess.hg.intro" ) ); + sink.paragraph_(); + + StringBuffer command = new StringBuffer(); + command.append( "$ hg clone " ); + command.append(hgRepo.getURI()); + + verbatimText( command.toString() ); + } + // Perforce /** Index: src/main/resources/project-info-report.properties =================================================================== --- src/main/resources/project-info-report.properties (revision 819145) +++ src/main/resources/project-info-report.properties (working copy) @@ -145,6 +145,7 @@ report.scm.accessthroughtproxy.title = Access through a proxy report.scm.anonymousaccess.cvs.intro = This project's CVS repository can be checked out through anonymous CVS with the following instruction set. When prompted for a password for anonymous, simply press the Enter key. report.scm.anonymousaccess.general.intro = Refer to the documentation of the SCM used for more information about anonymously check out. The connection url is: +report.scm.anonymousaccess.hg.intro = The source can be checked out anonymously from Mercurial with this command (See {http://www.selenic.com/mercurial/hg.1.html#clone,http://www.selenic.com/mercurial/hg.1.html#clone}): report.scm.anonymousaccess.svn.intro = The source can be checked out anonymously from SVN with this command: report.scm.anonymousaccess.title = Anonymous access report.scm.clearcase.intro = This project uses {ClearCase, http://www-306.ibm.com/software/awdtools/clearcase/} to manage its source code. Informations on ClearCase use can be found at {http://www.redbooks.ibm.com/redbooks/pdfs/sg246399.pdf, http://www.redbooks.ibm.com/redbooks/pdfs/sg246399.pdf}. @@ -153,6 +154,7 @@ report.scm.devaccess.clearcase.intro = Only project developers can access the ClearCase tree via this method. Substitute username with the proper value. report.scm.devaccess.cvs.intro = Only project developers can access the CVS tree via this method. Substitute username with the proper value. report.scm.devaccess.general.intro = Refer to the documentation of the SCM used for more information about developer check out. The connection url is: +report.scm.devaccess.hg.intro = Only project developers can access the Mercurial tree via this method (See {http://www.selenic.com/mercurial/hg.1.html#clone,http://www.selenic.com/mercurial/hg.1.html#clone}). report.scm.devaccess.perforce.intro = Only project developers can access the Perforce tree via this method. Substitute username and password with the proper values. report.scm.devaccess.starteam.intro = Only project developers can access the Starteam tree via this method. Substitute username with the proper value. report.scm.devaccess.svn.intro1.https = Everyone can access the Subversion repository via HTTP, but Committers must checkout the Subversion repository via HTTPS. @@ -165,6 +167,7 @@ report.scm.name = Source Repository report.scm.noscm = No source configuration management system is defined. Please check back at a later date. report.scm.overview.title = Overview +report.scm.hg.intro = This project uses {Mercurial, http://mercurial.selenic.com/wiki/} to manage its source code. Instructions on Mercurial use can be found at {http://hgbook.red-bean.com/read/, http://hgbook.red-bean.com/read/}. report.scm.perforce.intro = This project uses {Perforce, http://www.perforce.com/} to manage its source code. Instructions on Perforce use can be found at {http://www.perforce.com/perforce/doc.051/manuals/cmdref/index.html, http://www.perforce.com/perforce/doc.051/manuals/cmdref/index.html}. report.scm.starteam.intro = This project uses {Starteam, http://www.borland.com/us/products/starteam/} to manage its source code. report.scm.svn.intro = This project uses {Subversion, http://subversion.tigris.org/} to manage its source code. Instructions on Subversion use can be found at {http://svnbook.red-bean.com/, http://svnbook.red-bean.com/}. Index: src/main/resources/project-info-report_de.properties =================================================================== --- src/main/resources/project-info-report_de.properties (revision 819145) +++ src/main/resources/project-info-report_de.properties (working copy) @@ -145,6 +145,7 @@ report.scm.accessthroughtproxy.title = Zugriff \u00fcber einen Proxy report.scm.anonymousaccess.cvs.intro = Das CVS-Archiv dieses Projektes kann durch anonymen CVS Zugriff mit dem folgenden Befehl ausgecheckt werden. Wenn Sie nach einem Passwort gefragt werden bet\u00e4tigen Sie einfach die Enter Taste. report.scm.anonymousaccess.general.intro = Konsultieren Sie die Dokumentation des verwendeten Versionskontrollsystems f\u00fcr weitere Informationen \u00fcber anonymen Zugriff. Der Web-Link ist\: +report.scm.anonymousaccess.hg.intro = Der Quellcode dieses Projektes kann anonym mit Mercurial \u00fcber folgenden Befehl ausgecheckt werden (Siehe {http://www.selenic.com/mercurial/hg.1.html#clone,http://www.selenic.com/mercurial/hg.1.html#clone}). report.scm.anonymousaccess.svn.intro = Der Quellcode dieses Projektes kann anonym mit SVN \u00fcber folgenden Befehl ausgecheckt werden\: report.scm.anonymousaccess.title = Anonymer Zugang f\u00fcr jedermann report.scm.clearcase.intro = Dieses Projekt verwendet {ClearCase, http\://www-306.ibm.com/software/awdtools/clearcase/} um seinen Quellcode zu verwalten. Informationen \u00fcber ClearCase finden Sie unter\: {http\://www.redbooks.ibm.com/redbooks/pdfs/sg246399.pdf, http\://www.redbooks.ibm.com/redbooks/pdfs/sg246399.pdf}. @@ -153,6 +154,7 @@ report.scm.devaccess.clearcase.intro = Nur Projekt Entwickler k\u00f6nnen mit dieser Methode auf den ClearCase Baum zugreifen. Ersetzen Sie 'username' mit dem entsprechenden Wert. report.scm.devaccess.cvs.intro = Nur Projekt Entwickler k\u00f6nnen mit dieser Methode auf den CVS Baum zugreifen. Ersetzen Sie 'username' mit dem entsprechenden Wert. report.scm.devaccess.general.intro = Konsultieren Sie die Dokumentation des verwendeten Versionskontrollsystems f\u00fcr weitere Informationen \u00fcber Schreib-Zugriff f\u00fcr Entwickler unter\: +report.scm.devaccess.hg.intro = Nur Projekt Entwickler k\u00f6nnen mit dieser Methode auf den Mercurial Baum zugreifen. (Siehe {http://www.selenic.com/mercurial/hg.1.html#clone,http://www.selenic.com/mercurial/hg.1.html#clone}). report.scm.devaccess.perforce.intro = Nur Projekt Entwickler k\u00f6nnen mit dieser Methode auf den Perforce Baum zugreifen. Ersetzen Sie 'username' mit dem entsprechenden Wert. report.scm.devaccess.starteam.intro = Nur Projekt Entwickler k\u00f6nnen mit dieser Methode auf den Starteam Baum zugreifen. Ersetzen Sie 'username' mit dem entsprechenden Wert. report.scm.devaccess.svn.intro1.https = Jeder kann auf das Subversion-Archiv via HTTP zugreifen, aber Entwickler m\u00fcssen das Subversion-Archiv via HTTPS auschecken, um sp\u00e4ter \u00c4nderungen einchecken zu k\u00f6nnen\: @@ -165,6 +167,7 @@ report.scm.name = Versionskontrolle report.scm.noscm = Es wurde kein Versionskontrollsystem f\u00fcr dieses Projekt definiert. report.scm.overview.title = \u00dcbersicht +report.scm.hg.intro = Dieses Projekt verwendet {Mercurial, http://mercurial.selenic.com/wiki/} um seinen Quellcode zu verwalten. Informationen \u00fcber Mercurial finden Sie unter\: {http://hgbook.red-bean.com/read/, http://hgbook.red-bean.com/read/}. report.scm.perforce.intro = Dieses Projekt verwendet {Perforce, http\://www.perforce.com/} um seinen Quellcode zu verwalten. Informationen \u00fcber Perforce finden Sie unter\: {http\://www.perforce.com/perforce/doc.051/manuals/cmdref/index.html, http\://www.perforce.com/perforce/doc.051/manuals/cmdref/index.html}. report.scm.starteam.intro = Dieses Projekt verwendet {Starteam, http://www.borland.com/us/products/starteam/} um seinen Quellcode zu verwalten. report.scm.svn.intro = Dieses Projekt verwendet {Subversion, http\://subversion.tigris.org/} um seinen Quellcode zu verwalten. Informationen \u00fcber Subversion finden Sie unter\: {http\://svnbook.red-bean.com/, http\://svnbook.red-bean.com/}. Index: pom.xml =================================================================== --- pom.xml (revision 819145) +++ pom.xml (working copy) @@ -181,6 +181,11 @@