[ 
https://jira.codehaus.org/browse/MRELEASE-595?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=316785#comment-316785
 ] 

Steve van den Buys edited comment on MRELEASE-595 at 1/4/13 5:18 PM:
---------------------------------------------------------------------

Robert,

zipping the project would be a bit too large, but here are the relevant bits:

1) project structure is like:
{code} 
trunk/project-parent
     /project-entity-services
     /project-presentation
     /project-presentation-ear
     ...
tags/
branches/
.
.
.
{code}

2) In project-parent we have the master POM which contains the following 
relevant sections:
{code:xml} 
<scm>
        
<developerConnection>scm:svn:https://our.server.url/svn/voi/trunk</developerConnection>
</scm>
.
.
.
<plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-release-plugin</artifactId>
        <version>2.4</version>
        <configuration>
                <tagNameFormat>@{project.version}</tagNameFormat>
                <autoVersionSubmodules>true</autoVersionSubmodules>
        </configuration>
</plugin>
{code} 

3) I then simply move in the project-parent folder and start "mvn 
release:prepare"

Having done this, when I go to see in SVN afterwards, I see that under the 
tags-folder there is a folder (currently that would be 1.0.0.2) and under that 
folder is trunk, tags, branches and all the others. In the parent POM of the 
tagged project-parent, I see that the scm section has been adjusted to:

{code:xml} 
<scm>
        
<developerConnection>scm:svn:https://our.server.url/svn/voi/tags/1.0.0.2/trunk</developerConnection>
</scm>
{code} 

The thing is, I would just expect to see 
"https://our.server.url/svn/voi/tags/1.0.0.2";, likewise I would only expect to 
see the modules that are under the trunk to be tagged and not the trunk itself 
and all its sibling folders.

When I look at the logging, this is where it seems to go wrong:

[INFO] --- maven-release-plugin:2.4:prepare (default-cli) @ inburgering-parent 
---
[INFO] Resuming release from phase 'scm-tag'
[INFO] Tagging release with the label 1.0.0.2...
[INFO] Executing: cmd.exe /X /C "svn --non-interactive copy --file 
C:\Users\buyss\AppData\Local\Temp\maven-scm-488314082.commit 
https://our.server.url/svn/voi/ https://our.server.url/svn/voi/tags/1.0.0.2";

As you can see, the plugin decides to tag from the root-folder (voi) and not 
from voi/trunk only (which is what I would expect given that I specified trunk 
as the base-folder in my developerConnection.

Am I missing something here?
                
      was (Author: s_vandenbuys):
    Robert,

zipping the project would be a bit too large, but here are the relevant bits:

1) project structure is like:
{panel} 
trunk/project-parent
     /project-entity-services
     /project-presentation
     /project-presentation-ear
     ...
tags/
branches/
.
.
.
{panel}

2) In project-parent we have the master POM which contains the following 
relevant sections:
{code:xml} 
<scm>
        
<developerConnection>scm:svn:https://our.server.url/svn/voi/trunk</developerConnection>
</scm>
.
.
.
<plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-release-plugin</artifactId>
        <version>2.4</version>
        <configuration>
                <tagNameFormat>@{project.version}</tagNameFormat>
                <autoVersionSubmodules>true</autoVersionSubmodules>
        </configuration>
</plugin>
{code} 

3) I then simply move in the project-parent folder and start "mvn 
release:prepare"

Having done this, when I go to see in SVN afterwards, I see that under the 
tags-folder there is a folder (currently that would be 1.0.0.2) and under that 
folder is trunk, tags, branches and all the others. In the parent POM of the 
tagged project-parent, I see that the scm section has been adjusted to:

{code:xml} 
<scm>
        
<developerConnection>scm:svn:https://our.server.url/svn/voi/tags/1.0.0.2/trunk</developerConnection>
</scm>
{code} 

The thing is, I would just expect to see 
"https://our.server.url/svn/voi/tags/1.0.0.2";, likewise I would only expect to 
see the modules that are under the trunk to be tagged and not the trunk itself 
and all its sibling folders.

When I look at the logging, this is where it seems to go wrong:

[INFO] --- maven-release-plugin:2.4:prepare (default-cli) @ inburgering-parent 
---
[INFO] Resuming release from phase 'scm-tag'
[INFO] Tagging release with the label 1.0.0.2...
[INFO] Executing: cmd.exe /X /C "svn --non-interactive copy --file 
C:\Users\buyss\AppData\Local\Temp\maven-scm-488314082.commit 
https://our.server.url/svn/voi/ https://our.server.url/svn/voi/tags/1.0.0.2";

As you can see, the plugin decides to tag from the root-folder (voi) and not 
from voi/trunk only (which is what I would expect given that I specified trunk 
as the base-folder in my developerConnection.

Am I missing something here?
                  
> release:prepare using old SVN structure when creating tag
> ---------------------------------------------------------
>
>                 Key: MRELEASE-595
>                 URL: https://jira.codehaus.org/browse/MRELEASE-595
>             Project: Maven 2.x Release Plugin
>          Issue Type: Bug
>          Components: prepare
>    Affects Versions: 2.0
>         Environment: Apache Maven 2.2.1 (r801777; 2009-08-06 21:16:01+0200)
> Java version: 1.6.0_18
> OS name: "windows xp" version: "5.1" arch: "x86" Family: "windows"
>            Reporter: Cornel Masson
>
> I made a change in my project's SVN folder structure, and now release:prepare 
> is creating the tag using the old structure. Example:
> In my organization, each project has sub-folders for trunk, tags and 
> branches. However, my test projectA started out (incorrectly) in SVN 
> *without* trunk/tags/branches subfolders:
> {code}
> svnhost/code/projectA:
>     /gui
>     /model
>     -pom.xml
> {code}
> Later, I realised my mistake, created a trunk subfolder under projectA, and 
> moved the project contents into trunk. I also added tags and branches folders:
> {code}
> svnhost/code/projectA:
>     /trunk
>         /gui
>         /model
>         -pom.xml
>     /tags
>     /branches
> {code}
> I re-checked out a clean projectA and did release:prepare with tagBase = 
> {{svnhost/code/projectA/tags}} and tag name 'MyTag'. It created MyTag, but 
> the contents was *all* of trunk/tags/branches(!):
> {code}
> svnhost/code/projectA:
>     /trunk
>         /gui
>         /model
>         -pom.xml
>     /tags
>         /MyTag
>             /trunk
>                 /gui
>                 /model
>                 -pom.xml
>             /tags
>             /branches
>     /branches
> {code}
> instead of just using the contents of trunk at that point.
> It looks like it's picking up the *old* SVN structure from the projectA 
> folder.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://jira.codehaus.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to