scm-publish:publish-scm
Full name:
org.apache.maven.plugins:maven-scm-publish-plugin:3.3.0:publish-scm
Description:
Publish a content to scm. By default, content is taken from default site staging directory ${project.build.directory}/staging
. Can be used without project, so usable to update any SCM with any content.
Attributes:
- Executes as an aggregator goal.
- The goal is not marked as thread-safe and thus does not support parallel builds.
Required Parameters
Name | Type | Since | Description |
---|---|---|---|
<pubScmUrl> |
String |
- |
Location of the scm publication tree: scm:<scm_provider><delimiter><provider_specific_part> . Example: scm:svn:https://svn.apache.org/repos/infra/websites/production/maven/content/plugins/maven-scm-publish-plugin-LATEST/ Default: ${project.distributionManagement.site.url} User Property: scmpublish.pubScmUrl |
Optional Parameters
Name | Type | Since | Description |
---|---|---|---|
<addUniqueDirectory> |
boolean |
- |
Add each directory in a separated SCM command: this can be necessary if SCM does not support adding subdirectories in one command. Default: false |
<automaticRemotePathCreation> |
boolean |
- |
Configure svn automatic remote url creation. Default: true User Property: scmpublish.automaticRemotePathCreation |
<checkinComment> |
String |
- |
SCM log/checkin comment for this publication. Default: Site checkin for project ${project.name} User Property: scmpublish.checkinComment |
<checkoutDirectory> |
File |
- |
Location where the scm check-out is done. By default, scm checkout is done in build (target) directory, which is deleted on every mvn clean . To avoid this and get better performance, configure this location outside build structure and set tryUpdate to true . See Improving SCM Checkout Performance for more information.Default: ${project.build.directory}/scmpublish-checkout User Property: scmpublish.checkoutDirectory |
<content> |
File |
- |
The content to be published. Default: ${project.build.directory}/staging User Property: scmpublish.content |
<dryRun> |
boolean |
- |
Display list of added, deleted, and changed files, but do not do any actual SCM operations. User Property: scmpublish.dryRun |
<excludes> |
String |
- |
Patterns to exclude from the scm tree. |
<extraNormalizeExtensions> |
String[] |
- |
Extra file extensions to normalize line ending (will be added to default html ,css ,js list) |
<ignorePathsToDelete> |
String[] |
- |
Collections of paths not to delete when checking content to delete. If your site has subdirectories published by an other mechanism/build |
<includes> |
String |
- |
Patterns to include in the scm tree. |
<localCheckout> |
boolean |
- |
Use a local checkout instead of doing a checkout from the upstream repository. WARNING: This will only work with distributed SCMs which support the file:// protocol. TODO: we should think about having the defaults for the various SCM providers provided via Modello! Default: false User Property: localCheckout |
<password> |
String |
- |
The SCM password to use. This value takes precedence over the password derived from serverId .See also: serverId User Property: password |
<providerImplementations> |
Map<String,String> |
- |
List of SCM provider implementations. Key is the provider type, eg. cvs . Value is the provider implementation (the role-hint of the provider), eg. cvs or cvs_native .See also: ScmManager.setScmProviderImplementation |
<scmBranch> |
String |
- |
SCM branch to use. For github, you must configure with gh-pages .User Property: scmpublish.scm.branch |
<serverId> |
String |
- |
The server id specified in the settings.xml , which should be used for the authentication.See also: Settings Reference Default: ${project.distributionManagement.site.id} User Property: scmpublish.serverId |
<siteOutputEncoding> |
String |
- |
The outputEncoding parameter of the site plugin. This plugin will corrupt your site if this does not match the value used by the site plugin. Default: ${project.reporting.outputEncoding} User Property: outputEncoding |
<skipCheckin> |
boolean |
- |
Run add and delete commands, but leave the actually checkin for the user to run manually. User Property: scmpublish.skipCheckin |
<skipDeletedFiles> |
boolean |
- |
Do not delete files to the scm Default: false User Property: scmpublish.skipDeletedFiles |
<skipDeployement> |
boolean |
- |
Deprecated. Please use skipDeployment .Set this to 'true' to skip site deployment. Default: false |
<skipDeployment> |
boolean |
- |
Set this to 'true' to skip site deployment. Default: false User Property: scmpublish.skipDeploy Alias: maven.site.deploy.skip |
<subDirectory> |
String |
- |
Location where the content is published inside the ${checkoutDirectory} . By default, content is copyed at the root of ${checkoutDirectory} .User Property: scmpublish.subDirectory |
<tryUpdate> |
boolean |
- |
If the checkout directory exists and this flag is activated, the plugin will try an SCM-update instead of delete then checkout. Default: false User Property: scmpublish.tryUpdate |
<username> |
String |
- |
The SCM username to use. This value takes precedence over the username derived from serverId .See also: serverId User Property: username |
Parameter Details
<addUniqueDirectory>
Add each directory in a separated SCM command: this can be necessary if SCM does not support adding subdirectories in one command.
- Type:
boolean
- Required:
No
- Default:
false
<automaticRemotePathCreation>
Configure svn automatic remote url creation.
- Type:
boolean
- Required:
No
- User Property:
scmpublish.automaticRemotePathCreation
- Default:
true
<checkinComment>
SCM log/checkin comment for this publication.
- Type:
java.lang.String
- Required:
No
- User Property:
scmpublish.checkinComment
- Default:
Site checkin for project ${project.name}
<checkoutDirectory>
Location where the scm check-out is done. By default, scm checkout is done in build (target) directory, which is deleted on every
mvn clean
. To avoid this and get better performance, configure this location outside build structure and set tryUpdate
to true
. See Improving SCM Checkout Performance for more information.- Type:
java.io.File
- Required:
No
- User Property:
scmpublish.checkoutDirectory
- Default:
${project.build.directory}/scmpublish-checkout
<content>
The content to be published.
- Type:
java.io.File
- Required:
No
- User Property:
scmpublish.content
- Default:
${project.build.directory}/staging
<dryRun>
Display list of added, deleted, and changed files, but do not do any actual SCM operations.
- Type:
boolean
- Required:
No
- User Property:
scmpublish.dryRun
<excludes>
Patterns to exclude from the scm tree.
- Type:
java.lang.String
- Required:
No
<extraNormalizeExtensions>
Extra file extensions to normalize line ending (will be added to default
html
,css
,js
list)- Type:
java.lang.String[]
- Required:
No
<ignorePathsToDelete>
Collections of paths not to delete when checking content to delete. If your site has subdirectories published by an other mechanism/build
- Type:
java.lang.String[]
- Required:
No
<includes>
Patterns to include in the scm tree.
- Type:
java.lang.String
- Required:
No
<localCheckout>
Use a local checkout instead of doing a checkout from the upstream repository. WARNING: This will only work with distributed SCMs which support the file:// protocol. TODO: we should think about having the defaults for the various SCM providers provided via Modello!
- Type:
boolean
- Required:
No
- User Property:
localCheckout
- Default:
false
<password>
The SCM password to use. This value takes precedence over the password derived from
See also: serverId
serverId
.See also: serverId
- Type:
java.lang.String
- Required:
No
- User Property:
password
<providerImplementations>
List of SCM provider implementations. Key is the provider type, eg.
See also: ScmManager.setScmProviderImplementation
cvs
. Value is the provider implementation (the role-hint of the provider), eg. cvs
or cvs_native
.See also: ScmManager.setScmProviderImplementation
- Type:
java.util.Map<java.lang.String, java.lang.String>
- Required:
No
<pubScmUrl>
Location of the scm publication tree:
scm:<scm_provider><delimiter><provider_specific_part>
. Example: scm:svn:https://svn.apache.org/repos/infra/websites/production/maven/content/plugins/maven-scm-publish-plugin-LATEST/
- Type:
java.lang.String
- Required:
Yes
- User Property:
scmpublish.pubScmUrl
- Default:
${project.distributionManagement.site.url}
<scmBranch>
SCM branch to use. For github, you must configure with
gh-pages
.- Type:
java.lang.String
- Required:
No
- User Property:
scmpublish.scm.branch
<serverId>
The server id specified in the
See also: Settings Reference
settings.xml
, which should be used for the authentication.See also: Settings Reference
- Type:
java.lang.String
- Required:
No
- User Property:
scmpublish.serverId
- Default:
${project.distributionManagement.site.id}
<siteOutputEncoding>
The outputEncoding parameter of the site plugin. This plugin will corrupt your site if this does not match the value used by the site plugin.
- Type:
java.lang.String
- Required:
No
- User Property:
outputEncoding
- Default:
${project.reporting.outputEncoding}
<skipCheckin>
Run add and delete commands, but leave the actually checkin for the user to run manually.
- Type:
boolean
- Required:
No
- User Property:
scmpublish.skipCheckin
<skipDeletedFiles>
Do not delete files to the scm
- Type:
boolean
- Required:
No
- User Property:
scmpublish.skipDeletedFiles
- Default:
false
<skipDeployement>
Deprecated.
Please use
Please use
skipDeployment
.Set this to 'true' to skip site deployment.
- Type:
boolean
- Required:
No
- Default:
false
<skipDeployment>
Set this to 'true' to skip site deployment.
- Type:
boolean
- Required:
No
- User Property:
scmpublish.skipDeploy
- Default:
false
- Alias:
maven.site.deploy.skip
<subDirectory>
Location where the content is published inside the
${checkoutDirectory}
. By default, content is copyed at the root of ${checkoutDirectory}
.- Type:
java.lang.String
- Required:
No
- User Property:
scmpublish.subDirectory
<tryUpdate>
If the checkout directory exists and this flag is activated, the plugin will try an SCM-update instead of delete then checkout.
- Type:
boolean
- Required:
No
- User Property:
scmpublish.tryUpdate
- Default:
false
<username>
The SCM username to use. This value takes precedence over the username derived from
See also: serverId
serverId
.See also: serverId
- Type:
java.lang.String
- Required:
No
- User Property:
username