You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by mi...@apache.org on 2022/07/30 21:04:57 UTC

[maven-release] branch master updated: [MRELEASE-1099] Use shallow checkout/clone during release:perform

This is an automated email from the ASF dual-hosted git repository.

michaelo pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven-release.git


The following commit(s) were added to refs/heads/master by this push:
     new cc7d3b6a [MRELEASE-1099] Use shallow checkout/clone during release:perform
cc7d3b6a is described below

commit cc7d3b6a4c5e0ac7ceea0f7790b6248f1848d160
Author: Michael Cramer <mi...@bigmichi1.de>
AuthorDate: Tue Jun 14 17:23:23 2022 +0200

    [MRELEASE-1099] Use shallow checkout/clone during release:perform
    
    This closes #139
---
 maven-release-manager/src/main/mdo/release-descriptor.mdo         | 5 +++++
 .../java/org/apache/maven/plugins/release/PerformReleaseMojo.java | 8 ++++++++
 2 files changed, 13 insertions(+)

diff --git a/maven-release-manager/src/main/mdo/release-descriptor.mdo b/maven-release-manager/src/main/mdo/release-descriptor.mdo
index 92f64ee4..0a1d8cd5 100644
--- a/maven-release-manager/src/main/mdo/release-descriptor.mdo
+++ b/maven-release-manager/src/main/mdo/release-descriptor.mdo
@@ -941,6 +941,10 @@
         {
             return false;
         }
+        if ( !java.util.Objects.equals( scmShallowClone, that.isScmShallowClone() ) )
+        {
+            return false;
+        }
         if ( !java.util.Objects.equals( scmReleaseCommitComment, that.getScmReleaseCommitComment() ) )
         {
             return false;
@@ -1087,6 +1091,7 @@
         result = 29 * result + java.util.Objects.hashCode( pomFileName );
         result = 29 * result + java.util.Objects.hashCode( checkModificationExcludes );
         result = 29 * result + java.util.Objects.hashCode( scmDevelopmentCommitComment );
+        result = 29 * result + java.util.Objects.hashCode( scmShallowClone );
         result = 29 * result + java.util.Objects.hashCode( scmReleaseCommitComment );
         result = 29 * result + java.util.Objects.hashCode( scmBranchCommitComment );
         result = 29 * result + java.util.Objects.hashCode( scmRollbackCommitComment );
diff --git a/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/PerformReleaseMojo.java b/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/PerformReleaseMojo.java
index aa6ac09d..7994e2a6 100644
--- a/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/PerformReleaseMojo.java
+++ b/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/PerformReleaseMojo.java
@@ -100,6 +100,12 @@ public class PerformReleaseMojo
     @Parameter( property = "password" )
     private String password;
 
+    /**
+     * When cloning a repository if it should be a shallow clone or a full clone.
+     */
+    @Parameter( defaultValue = "true", property = "scmShallowClone" )
+    private boolean scmShallowClone = true;
+
     /**
      * Whether to use the default release profile (Maven 2 and 3) that adds sources and javadocs to the released
      * artifact, if appropriate. If set to true, the release plugin sets the property "<code>performRelease</code>" to
@@ -183,6 +189,8 @@ public class PerformReleaseMojo
                 releaseDescriptor.setScmPassword( password );
             }
 
+            releaseDescriptor.setScmShallowClone( scmShallowClone );
+
             releaseDescriptor.setLocalCheckout( localCheckout );
 
             releaseDescriptor.setCheckoutDirectory( workingDirectory.getAbsolutePath() );