Author: evenisse Date: Mon Sep 25 00:55:11 2006 New Revision: 449596 URL: http://svn.apache.org/viewvc?view=rev&rev=449596 Log: [SCM-218] Update the plugin documentation with our standard Submitted by: Marvin King
Added: maven/scm/trunk/maven-scm-plugin/src/site/apt/examples/ maven/scm/trunk/maven-scm-plugin/src/site/apt/examples/bootstrapping-with-pom.apt (with props) maven/scm/trunk/maven-scm-plugin/src/site/apt/examples/scm-advance-features.apt (with props) maven/scm/trunk/maven-scm-plugin/src/site/apt/index.apt (with props) maven/scm/trunk/maven-scm-plugin/src/site/apt/usage.apt (with props) Modified: maven/scm/trunk/maven-scm-plugin/ (props changed) maven/scm/trunk/maven-scm-plugin/pom.xml maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/AbstractScmMojo.java maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/BootstrapMojo.java maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/CheckinMojo.java maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/CheckoutMojo.java maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/DiffMojo.java maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/StatusMojo.java maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/TagMojo.java maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/UpdateMojo.java maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/ValidateMojo.java maven/scm/trunk/maven-scm-plugin/src/site/apt/introduction.apt maven/scm/trunk/maven-scm-plugin/src/site/site.xml Propchange: maven/scm/trunk/maven-scm-plugin/ ------------------------------------------------------------------------------ --- svn:ignore (original) +++ svn:ignore Mon Sep 25 00:55:11 2006 @@ -5,3 +5,4 @@ maven-scm-plugin.iml *.ipr *.iws +cobertura.ser Modified: maven/scm/trunk/maven-scm-plugin/pom.xml URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-plugin/pom.xml?view=diff&rev=449596&r1=449595&r2=449596 ============================================================================== --- maven/scm/trunk/maven-scm-plugin/pom.xml (original) +++ maven/scm/trunk/maven-scm-plugin/pom.xml Mon Sep 25 00:55:11 2006 @@ -11,6 +11,26 @@ <name>Maven SCM Plugin</name> <description>Maven Plugin that allows accessing different SCMs</description> <version>1.0-SNAPSHOT</version> + <prerequisites> + <maven>2.0.1</maven> + </prerequisites> + <reporting> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-plugin-plugin</artifactId> + <version>2.2-SNAPSHOT</version> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-jxr-plugin</artifactId> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-javadoc-plugin</artifactId> + </plugin> + </plugins> + </reporting> <build> <extensions> <extension> @@ -100,12 +120,4 @@ <url>scpexe://minotaur.apache.org/www/maven.apache.org/scm/plugins</url> </site> </distributionManagement> - <reporting> - <plugins> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-plugin-plugin</artifactId> - </plugin> - </plugins> - </reporting> </project> Modified: maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/AbstractScmMojo.java URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/AbstractScmMojo.java?view=diff&rev=449596&r1=449595&r2=449596 ============================================================================== --- maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/AbstractScmMojo.java (original) +++ maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/AbstractScmMojo.java Mon Sep 25 00:55:11 2006 @@ -50,6 +50,8 @@ private String connectionUrl; /** + * The SCM connection URL for developers + * * @parameter expression="${connectionUrl}" default-value="${project.scm.developerConnection}" */ private String developerConnectionUrl; Modified: maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/BootstrapMojo.java URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/BootstrapMojo.java?view=diff&rev=449596&r1=449595&r2=449596 ============================================================================== --- maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/BootstrapMojo.java (original) +++ maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/BootstrapMojo.java Mon Sep 25 00:55:11 2006 @@ -30,6 +30,8 @@ import java.util.Properties; /** + * Pulls the project source from the configured scm and execute the configured goals + * * @author <a href="[EMAIL PROTECTED]">Dan T. Tran</a> * @version $Id$ * @goal bootstrap Modified: maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/CheckinMojo.java URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/CheckinMojo.java?view=diff&rev=449596&r1=449595&r2=449596 ============================================================================== --- maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/CheckinMojo.java (original) +++ maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/CheckinMojo.java Mon Sep 25 00:55:11 2006 @@ -24,6 +24,8 @@ import java.io.IOException; /** + * commit changes to the configured scm url + * * @author <a href="[EMAIL PROTECTED]">Emmanuel Venisse</a> * @version $Id$ * @goal checkin @@ -33,11 +35,15 @@ extends AbstractScmMojo { /** + * commit log + * * @parameter expression="${message} */ private String message; /** + * configured scm url to use + * * @parameter expression="${connectionType}" default-value="developerConnection" */ private String connectionType; Modified: maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/CheckoutMojo.java URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/CheckoutMojo.java?view=diff&rev=449596&r1=449595&r2=449596 ============================================================================== --- maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/CheckoutMojo.java (original) +++ maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/CheckoutMojo.java Mon Sep 25 00:55:11 2006 @@ -27,6 +27,8 @@ import java.io.IOException; /** + * get a fresh copy of the latest source from the configured scm url + * * @author <a href="[EMAIL PROTECTED]">Emmanuel Venisse</a> * @version $Id$ * @goal checkout @@ -37,6 +39,8 @@ extends AbstractScmMojo { /** + * branch name + * * @parameter expression="${branch} */ private String branch; Modified: maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/DiffMojo.java URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/DiffMojo.java?view=diff&rev=449596&r1=449595&r2=449596 ============================================================================== --- maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/DiffMojo.java (original) +++ maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/DiffMojo.java Mon Sep 25 00:55:11 2006 @@ -26,6 +26,8 @@ import java.io.IOException; /** + * displays the difference of the working copy with the latest copy in the configured scm url + * * @author <a href="[EMAIL PROTECTED]">Emmanuel Venisse</a> * @version $Id$ * @goal diff Modified: maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/StatusMojo.java URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/StatusMojo.java?view=diff&rev=449596&r1=449595&r2=449596 ============================================================================== --- maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/StatusMojo.java (original) +++ maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/StatusMojo.java Mon Sep 25 00:55:11 2006 @@ -28,6 +28,8 @@ import java.util.Iterator; /** + * Displays the modification status of the files in the configured scm url. + * * @author <a href="[EMAIL PROTECTED]">Emmanuel Venisse</a> * @version $Id$ * @goal status Modified: maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/TagMojo.java URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/TagMojo.java?view=diff&rev=449596&r1=449595&r2=449596 ============================================================================== --- maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/TagMojo.java (original) +++ maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/TagMojo.java Mon Sep 25 00:55:11 2006 @@ -26,6 +26,8 @@ import java.util.Date; /** + * tag the project + * * @author <a href="[EMAIL PROTECTED]">Emmanuel Venisse</a> * @author <a href="[EMAIL PROTECTED]">Sharmarke Aden</a> * @@ -36,21 +38,29 @@ public class TagMojo extends AbstractScmMojo { /** + * tag name + * * @parameter expression="${tag}" */ private String tag; /** + * set the timestamp format + * * @parameter expression="${timestampFormat}" default-value="yyyyMMddHHmmss" */ private String timestampFormat; /** + * use timestamp tagging + * * @parameter expression="${addTimestamp}" default-value="false" */ private boolean addTimestamp; /** + * timestamp tag prefix + * * @parameter expression="${timestampPrefix}" default-value="-" */ private String timestampPrefix; Modified: maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/UpdateMojo.java URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/UpdateMojo.java?view=diff&rev=449596&r1=449595&r2=449596 ============================================================================== --- maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/UpdateMojo.java (original) +++ maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/UpdateMojo.java Mon Sep 25 00:55:11 2006 @@ -26,6 +26,8 @@ import java.io.IOException; /** + * update the local working copy with the latest source from the configured scm url + * * @author <a href="[EMAIL PROTECTED]">Emmanuel Venisse</a> * @version $Id$ * @goal update @@ -36,11 +38,15 @@ extends AbstractScmMojo { /** + * branch name + * * @parameter expression="${branch}" */ private String branch; /** + * tag name + * * @parameter expression="${tag}" */ private String tag; Modified: maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/ValidateMojo.java URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/ValidateMojo.java?view=diff&rev=449596&r1=449595&r2=449596 ============================================================================== --- maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/ValidateMojo.java (original) +++ maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/ValidateMojo.java Mon Sep 25 00:55:11 2006 @@ -34,11 +34,15 @@ extends AbstractScmMojo { /** + * scm connection url + * * @parameter expression="${scmConnection}" default-value="${project.scm.connection}" */ private String scmConnection; /** + * scm connection url for developers + * * @parameter expression="${scmDeveloperConnection}" default-value="${project.scm.developerConnection}" */ private String scmDeveloperConnection; Added: maven/scm/trunk/maven-scm-plugin/src/site/apt/examples/bootstrapping-with-pom.apt URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-plugin/src/site/apt/examples/bootstrapping-with-pom.apt?view=auto&rev=449596 ============================================================================== --- maven/scm/trunk/maven-scm-plugin/src/site/apt/examples/bootstrapping-with-pom.apt (added) +++ maven/scm/trunk/maven-scm-plugin/src/site/apt/examples/bootstrapping-with-pom.apt Mon Sep 25 00:55:11 2006 @@ -0,0 +1,87 @@ + ------ + Maven SCM Plugin - bootstrapping using a pom + ------ + Pete Marvin King + ------ + 20 July 2006 + ------ + +Bootstrapping a project using a pom file + + Using the <<<scm:bootstrap>>> a project can be build from a fresh copy of the source in the scm repository. + This is a convenient way to distribute a project because the bootstrap pom can be given to a developer to generate + the maven build environment for the project. + + The <<<pom.xml>>> should contain a scm configuration for the bootstrap to work. + ++-----------+ + <project> + [...] + <packaging>jar</packaging> + <version>1.0-SNAPSHOT</version> + <name>SCM Sample Project</name> + <url>http://somecompany.com</url> + <scm> + <connection>scm:svn:http://somerepository.com/svn_repo/trunk</connection> + <developerConnection>scm:svn:https://somerepository.com/svn_repo/trunk</developerConnection> + <url>http://somerepository.com/view.cvs</url> + <scm> + [...] + <build> + [...] + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-scm-plugin</artifactId> + <version>1.0-SNAPSHOT</version> + <configuration> + <goals>install</goals> + </configuration> + </plugin + </plugins + [...] + </build> + [...] + </project> ++-----------+ + + Assuming the scm configuration has been configured in the <<<pom.xml>>>, bootstrapping can be invoked by + ++---------+ + mvn scm:bootstrap ++---------+ + + By default the scm plugin will get the latest version from the trunk and generate it under <<<target/checkout>>> and execute + the configured goals in it. + +Configuring Authentication + + Most public repositories requires developers to authenticate first before they can pull the source from the repository. + For repository requiring authentication, the scm plugin needs to be configured in the <<<pom.xml>>> + + * specifying the username and password for svn and starteam + ++-----------+ + [...] + <build> + [...] + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-scm-plugin</artifactId> + <version>1.0-SNAPSHOT</version> + <configuration> + <username>username</username> + <password>password<password> + </configuration> + </plugin + </plugins + [...] + </build> + [...] ++-----------+ + + + + + Propchange: maven/scm/trunk/maven-scm-plugin/src/site/apt/examples/bootstrapping-with-pom.apt ------------------------------------------------------------------------------ svn:eol-style = native Propchange: maven/scm/trunk/maven-scm-plugin/src/site/apt/examples/bootstrapping-with-pom.apt ------------------------------------------------------------------------------ svn:keywords = "Author Date Id Revision" Added: maven/scm/trunk/maven-scm-plugin/src/site/apt/examples/scm-advance-features.apt URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-plugin/src/site/apt/examples/scm-advance-features.apt?view=auto&rev=449596 ============================================================================== --- maven/scm/trunk/maven-scm-plugin/src/site/apt/examples/scm-advance-features.apt (added) +++ maven/scm/trunk/maven-scm-plugin/src/site/apt/examples/scm-advance-features.apt Mon Sep 25 00:55:11 2006 @@ -0,0 +1,177 @@ + ------ + Maven SCM Plugin - other scm features + ------ + Pete Marvin King + ------ + 20 July 2006 + ------ + +Basic SCM Configuration + + The scm plugin requires the scm to be configured in the <<<pom.xml>>>. + ++---------+ + [...] + <packaging>jar</packaging> + <version>1.0-SNAPSHOT</version> + <name>SCM Sample Project</name> + <url>http://somecompany.com</url> + <scm> + <connection>scm:svn:http://somerepository.com/svn_repo/trunk</connection> + <developerConnection>scm:svn:https://somerepository.com/svn_repo/trunk</developerConnection> + <url>http://somerepository.com/view.cvs</url> + </scm> + [...] ++---------+ + + Once the scm has been configured, scm operations can be performed. + + * changelog - displays the project commit changes for each revisions + + <<<pom.xml>>> configuration : + ++-----------+ +[...] + <build> + [...] + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-scm-plugin</artifactId> + <version>1.0-SNAPSHOT</version> + <configuration> + <startDate>YYYY-MM-DD</startDate> + <endDate>YYYY-MM-DD</endDate> + </configuration> + </plugin> + [...] + </plugins + [...] + </build> +[...] ++-----------+ + + Command : + ++---------+ + mvn scm:changelog ++---------+ + + or you can specify the startDate and endDate on the commandline + ++---------+ + mvn -DstartDate=YYYY-MM-DD -DendDate=YYYY-MM-DD scm:changelog ++---------+ + + + * diff + + <<<pom.xml>>> configuration : + ++-----------+ +[...] + <build> + [...] + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-scm-plugin</artifactId> + <version>1.0-SNAPSHOT</version> + <configuration> + <startRevision>connection</startRevision> + <endRevision>connection</endRevision> + </configuration> + </plugin> + [...] + </plugins + [...] + </build> +[...] ++-----------+ + + Command : + ++---------+ + mvn scm:diff ++---------+ + + or you can specify the startRevision and endRevision in the command line + ++---------+ + mvn -DstartRevision=<revision> -DendRevision=<revision> scm:diff ++---------+ + + * edit - set the edit status of the file, locking the project sources if supported. + + Command : + ++---------+ + mvn scm:edit ++---------+ + + * status - displays the modified files in the project. + + Command : + ++---------+ + mvn scm:status ++---------+ + + * tag + + <<<pom.xml>>> configuration : + ++-----------+ +[...] + <build> + [...] + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-scm-plugin</artifactId> + <version>1.0-SNAPSHOT</version> + <configuration> + <tagName>tag</tagName> + </configuration> + </plugin> + [...] + </plugins + [...] + </build> +[...] ++-----------+ + + Command : + ++---------+ + mvn scm:tag ++---------+ + + or you can specify the tag name in the command line + ++---------+ + mvn -DtagName="<tag name>" scm:tag ++---------+ + + * unedit - unset the edit status of the project sources and unlocking it if supported. + + Command : + ++---------+ + mvn scm:unedit ++---------+ + + * validate - check if the scm urls configured in the <<<pom.xml>>> is valid. + + Command : + ++---------+ + mvn scm:validate ++---------+ + + or passing the scmConnection or/and the developerConnection in the command line + ++---------+ + mvn -DscmConnection="<scm url>" -DscmDeveloperConnection="<scm url>" scm:validate ++---------+ + Propchange: maven/scm/trunk/maven-scm-plugin/src/site/apt/examples/scm-advance-features.apt ------------------------------------------------------------------------------ svn:eol-style = native Propchange: maven/scm/trunk/maven-scm-plugin/src/site/apt/examples/scm-advance-features.apt ------------------------------------------------------------------------------ svn:keywords = "Author Date Id Revision" Added: maven/scm/trunk/maven-scm-plugin/src/site/apt/index.apt URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-plugin/src/site/apt/index.apt?view=auto&rev=449596 ============================================================================== --- maven/scm/trunk/maven-scm-plugin/src/site/apt/index.apt (added) +++ maven/scm/trunk/maven-scm-plugin/src/site/apt/index.apt Mon Sep 25 00:55:11 2006 @@ -0,0 +1,56 @@ + ------ + Maven SCM Plugin + ------ + Pete Marvin King + ------ + 18 July 2006 + ------ + +Maven SCM Plugin + + The scm plugin offers a vendor independent access to the common scm commands by offering a set + command mapping to the scm being configured. + +* Supported SCM Command Configurations + + * {{{changelog-mojo.html}Changelog}} - command to show the source code revisions + + * {{{checkin-mojo.html}Checkin}} - command for commiting changes + + * {{{checkout-mojo.html}Checkout}} - command for getting the source code + + * {{{diff-mojo.html}Diff}} - command for showing the difference of the working copy with the remote ones + + * {{{edit-mojo.html}Edit}} - command for starting edit on the working copy + + * {{{status-mojo.html}Status}} - command for showing the scm status of the working copy + + * {{{tag-mojo.html}Tag}} - command for tagging the certain revision + + * {{{unedit-mojo.html}UnEdit}} - command for to stop editing the working copy + + * {{{update-mojo}Update}} - command for updating the working with the latest changes + + * {{{validate-mojo.html}Validate}} - validates the scm information on the pom + +* Goals Overview + + General Information about the goals. check the links above. + +* Usage + + Instructions on how to use the Plugin Name can be found {{{usage.html}here}}. + +Examples + + To provide you with better understanding on some usages of the Maven SCM Plugin, + you can take a look into the following examples: + + {{{examples/bootstrapping-with-pom.html}Bootstrapping using a POM file}} + + {{{examples/scm-advance-features.html}Other advance scm commands}} + + + + + Propchange: maven/scm/trunk/maven-scm-plugin/src/site/apt/index.apt ------------------------------------------------------------------------------ svn:eol-style = native Propchange: maven/scm/trunk/maven-scm-plugin/src/site/apt/index.apt ------------------------------------------------------------------------------ svn:keywords = "Author Date Id Revision" Modified: maven/scm/trunk/maven-scm-plugin/src/site/apt/introduction.apt URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-plugin/src/site/apt/introduction.apt?view=diff&rev=449596&r1=449595&r2=449596 ============================================================================== --- maven/scm/trunk/maven-scm-plugin/src/site/apt/introduction.apt (original) +++ maven/scm/trunk/maven-scm-plugin/src/site/apt/introduction.apt Mon Sep 25 00:55:11 2006 @@ -1,14 +0,0 @@ - ------ - Maven SCM - ------ - Carlos Sanchez - ------ - 28 June 2006 - ------ - -Maven SCM Plugin - - Maven Plugin that allows accessing different SCMs (Source Control Managers) like Subversion, CVS, Perforce,... - using {{{../}Maven SCM}} as underlying library. - - Check the {{{plugin-info.html}Reference Documentation}} for goals and parameters. Added: maven/scm/trunk/maven-scm-plugin/src/site/apt/usage.apt URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-plugin/src/site/apt/usage.apt?view=auto&rev=449596 ============================================================================== --- maven/scm/trunk/maven-scm-plugin/src/site/apt/usage.apt (added) +++ maven/scm/trunk/maven-scm-plugin/src/site/apt/usage.apt Mon Sep 25 00:55:11 2006 @@ -0,0 +1,120 @@ + ------ + Maven SCM Plugin - basic usage + ------ + Pete Marvin King + ------ + 18 July 2006 + ------ + +Introduction + + The scm plugin maps a lot of commands to a variety of scm implementations. But there are only 2 frequently + used commands: + + * checkin - commit the changes to the remote repository ( scm server ). + + * update - updates the local working copy with the one from the remote repository ( scm server ). + +Configuring SCM + + Each scm has a different command line invocation to commit the modified sources. Using maven this process is + simplified by providing a uniform way to do this by letting maven handle the command line translation to perform + the scm task. + + To configure the scm support for maven you need the scm configuration in your <<<pom.xml>>>. + ++---------+ + [...] + <packaging>jar</packaging> + <version>1.0-SNAPSHOT</version> + <name>SCM Sample Project</name> + <url>http://somecompany.com</url> + <scm> + <connection>scm:svn:http://somerepository.com/svn_repo/trunk</connection> + <developerConnection>scm:svn:https://somerepository.com/svn_repo/trunk</developerConnection> + <url>http://somerepository.com/view.cvs</url> + </scm> + [...] ++---------+ + + Maven will use the information embedded in the scm configuration to determine the command mapping for the scm command. + The scm configuration url is composed of different information that defines the mapping : + ++------+ + scm:svn:http://somerepository.com/svn_repo/trunk + <service name>:<scm implementation>:<repository url> ++------+ + + Check the {{{http://maven.apache.org/scm/scms-overview.html}maven scm list}} for the list of supported SCMs. + +Committing and updating changes through Maven + + Assuming that SCM has been configured in the <<<pom.xml>>> and the project directory is managed by a SCM, invoking + the checkin goal in the scm will start the commit process for all configured sources in your <<<pom.xml>>>. + + <<The files should be added beforehand by an external scm client.>> + ++-----+ + mvn -Dmessage="<commit_log_here>" scm:checkin ++-----+ + + for update + ++-----+ + mvn scm:update ++-----+ + +Specifying the scm connection to use + + There two possible scm connections that can be used in the <<<pom.xml>>>, connection and developerConnection. + + * connection configuration + ++-----------+ + [...] + <build> + [...] + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-scm-plugin</artifactId> + <version>1.0-SNAPSHOT</version> + <configuration> + <connectionType>connection</connectionType> + </configuration> + </plugin> + [...] + </plugins + [...] + </build> + [...] ++-----------+ + + * developerConnection configuration + ++-----------+ + [...] + <build> + [...] + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-scm-plugin</artifactId> + <version>1.0-SNAPSHOT</version> + <configuration> + <connectionType>developerConnection</connectionType> + </configuration> + </plugin> + [...] + </plugins + [...] + </build> + [...] ++-----------+ + + +Related Links + + {{{http://docs.codehaus.org/display/SCM/SCM+Matrix}SCM Plugin Matrix}} + + Propchange: maven/scm/trunk/maven-scm-plugin/src/site/apt/usage.apt ------------------------------------------------------------------------------ svn:eol-style = native Propchange: maven/scm/trunk/maven-scm-plugin/src/site/apt/usage.apt ------------------------------------------------------------------------------ svn:keywords = "Author Date Id Revision" Modified: maven/scm/trunk/maven-scm-plugin/src/site/site.xml URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-plugin/src/site/site.xml?view=diff&rev=449596&r1=449595&r2=449596 ============================================================================== --- maven/scm/trunk/maven-scm-plugin/src/site/site.xml (original) +++ maven/scm/trunk/maven-scm-plugin/src/site/site.xml Mon Sep 25 00:55:11 2006 @@ -19,13 +19,17 @@ <item name="JXR" href="http://maven.apache.org/jxr"/> <item name="Doxia" href="http://maven.apache.org/doxia"/> </links> - <menu name="Overview"> - <item name="Introduction" href="introduction.html"/> + <item name="Introduction" href="index.html"/> + <item name="Goals" href="plugin-info.html"/> + <item name="Usage" href="usage.html"/> + <!-- item name="FAQ" href="faq.html" / --> + </menu> + <menu name="Examples"> + <item name="Bootstrapping using a POM file" href="examples/bootstrapping-with-pom.html" /> + <item name="Other SCM commands" href="examples/scm-advance-features.html" /> </menu> - <menu name="Quick Links"> - <item name="Home" href="http://maven.apache.org/scm/index.html"/> <item name="Maven SCM Plugin" href="http://maven.apache.org/scm/plugins/index.html"/> <item name="SCM URL Format" href="http://maven.apache.org/scm/scm-url-format.html"/> <item name="Supported SCMs" href="http://maven.apache.org/scm/scms-overview.html">