You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Mark Struberg (JIRA)" <ji...@codehaus.org> on 2009/10/20 07:54:28 UTC

[jira] Commented: (MRELEASE-477) Add a commitBeforeTag option for release:prepare to allow skipping scm-commit-release

    [ http://jira.codehaus.org/browse/MRELEASE-477?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=195309#action_195309 ] 

Mark Struberg commented on MRELEASE-477:
----------------------------------------

Maybe this comment sounds a bit harsh, but I think this may introduce bigger problems than having a tag 1 minute before a release got finished (or rollbacked). Please consider that any1 is free to tag something in the SCM and we are talking about SCMs and not about money transfers on a bank accounting system.

Doing a generic commit on the project before doing the tagging feels pretty wrong since this surely is a error prone. Just imagine some test will modify a local resource (which must not happen). You will never ever recognize that your test is modifying the build and thus is not predictable!

I think the fact that SVN allows 'tags on the fly' shows that there is something fundamentally wrong with the way SVN evolved the last years!
And we shall not copy bad practice.

> Add a commitBeforeTag option for release:prepare to allow skipping scm-commit-release
> -------------------------------------------------------------------------------------
>
>                 Key: MRELEASE-477
>                 URL: http://jira.codehaus.org/browse/MRELEASE-477
>             Project: Maven 2.x Release Plugin
>          Issue Type: Improvement
>          Components: prepare
>            Reporter: Mike Dillon
>
> As detailed in this thread, there can be reproducibility problems with committing to the source branch (e.g. trunk) before tagging:
>     http://www.nabble.com/Limitation-of-the-release-plugin--to20822478.html
> In the now default case where remoteTagging is true, the commit to the source branch is necessary to get the source into the right state before doing the remote copy. However, when remoteTagging is false, the extra commit means that between the user's initial checkout and the automatic commit to the source branch, other changes could have been committed which will mean that the new tag will not have been created from a single, consistent revision of the source branch.
> My proposed fix for this is to add a commitBeforeTag option that would cause scm-commit-release to be skipped during release:prepare. It would be an error to have commitBeforeTag=false when remoteTagging=true since the commit before tag must be done in the remote tagging scenario.
> I can provide a patch if this approach is acceptable.

-- 
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