Subversion Tag is incorrect when releasing from a Branch
--------------------------------------------------------

                 Key: MRELEASE-576
                 URL: http://jira.codehaus.org/browse/MRELEASE-576
             Project: Maven 2.x Release Plugin
          Issue Type: Bug
          Components: prepare
    Affects Versions: 2.0
         Environment: Linux
            Reporter: Ed Hillmann
            Priority: Minor
         Attachments: myBranch.zip, mySecondBranch.zip

I've been able to recreate this error using a dummy application.  This is what 
I've done.

1) Created a HelloWorld project, which has a single sub module HelloWorldJar.  
HelloWorlJar uses HelloWorld as it's parent.  I first created this on a trunk 
in a svn repository and committed everything.  

2) I used "release:branch" to create a branch.

3) Checked out the branch, and on the working copy of the branch I ran "mvn 
release:prepare".  It worked fine (the tag was constructed correctly).  "mvn 
release:perform" also worked swimmingly.  I've attached these maven projects in 
the myBranch.zip file.

4) Back on the trunk, I created another branch, named mySecondBranch

5) After checking out mySecondBranch, I introduced a new module named parent.  
HelloWorldJar was updated to use parent as it's parent (yes, I'm not very 
creative in the naming department).  Parent was also listed as a module in 
HelloWorld (in addition to HelloWorldJar).  Everything's committed.  The SCM 
value is correct (it's the right branch directory).  I've attached the maven 
projects in the mySecondBranch.zip file.

6) When I run "mvn release:prepare", it all builds, but the tag is constructed 
incorrectly.  Instead of /tags/helloWorld-2.0 pointing to a revision of 
/branches/mySecondBranch, /tags/helloWorld-2.0 points to /branches.

7) {OK, this is wierd}.  When I run "mvn release:perform", it checks out 
against the tag helloWorld-2.0.  Which checks out the entire branches 
directory.  Once it's done that (I'm using a test repository), it builds the 
correct branch (it's building using the correct branch).  I don't know how it's 
working, but it is.

So, I guess it's working OK.  I'm not sure how it knows to pick out the correct 
branch (as it's checking out the full contents of the branch directory).  So 
it's building it eventually.

However, for large projects with multiple branches, this will be very slow to 
check out the entire contents of the branches directory, not to mention use 
much more disk space than is needed.  If the tag is constructed correctly, it 
avoids the whole thing.

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

        

Reply via email to