You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "james strachan (JIRA)" <ji...@codehaus.org> on 2010/10/06 13:14:32 UTC
[jira] Commented: (MRELEASE-605) when not pushing changes to remote
git repo in 2.1, the release plugin fails on release:perform
[ http://jira.codehaus.org/browse/MRELEASE-605?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=237649#action_237649 ]
james strachan commented on MRELEASE-605:
-----------------------------------------
BTW using 2.1 you can do a release using pushChanges as false. For those interested here's how I did it...
* add the following to your pom (the version and pushChanges are the biggies)
{code}
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.1</version>
<configuration>
<pushChanges>false</pushChanges>
<autoVersionSubmodules>true</autoVersionSubmodules>
<allowTimestampedSnapshots>false</allowTimestampedSnapshots>
<arguments>-Prelease</arguments>
</configuration>
</plugin>
{code}
* in your pom.xml make sure you set the scm section as follows
{code}
<scm>
<!-- TODO - hack this in your ~/.m2/settings.xml to point to your local checkout for releases -->
<developerConnection>${release-altGitURL}</developerConnection>
...
</scm>
{code}
* in your ~/.m2/settings.xml make sure you have this...
{code}
<settings>
<profiles>
<profile>
<id>release</id>
<properties>
<release-altGitURL>scm:git:file:///directory/where/my/code/is</release-altGitURL>
</properties>
</profile>
</profiles>
{code}
* then when running the release plugin use
{code}
mvn release:prepare -Prelease
mvn release:perform -Prelease
{code}
> when not pushing changes to remote git repo in 2.1, the release plugin fails on release:perform
> -----------------------------------------------------------------------------------------------
>
> Key: MRELEASE-605
> URL: http://jira.codehaus.org/browse/MRELEASE-605
> Project: Maven 2.x Release Plugin
> Issue Type: Improvement
> Affects Versions: 2.1
> Reporter: james strachan
>
> as it tries to clone the remote repo, which has not yet been pushed - so there's no tag in the remote repo yet.
> Ideally if pushChanges is false, it should use a value of
> {code}
> <scm>
> <developerConnectionL>scm:git:file://${baseDir}</developerConnection>
> ...
> </scm>
> {code}
> so that it clones from the current local git repo (which has everything inside it) rather than the remote repo which has yet to be pushed.
> BTW a great use case for not pushing is using a staging maven repo like Nexus; which may reject an attempt to promote a staged build, so you only want to push after a downstream stage works.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira