On 23.05.2014 18:29, Ben Fritz wrote:
> Yesterday when I was tagging code prior to releasing software, I
> selected the "all" button in the "Set explicit revision for these
> externals" area as I normally do. I also chose to switch my working
> copy to the new tag, so I could build from the tag.
> As expected, after the copy operation, there was an operation to
> modify the externals. This and the subsequent "switch" command both
> completed with no error messages.
> At a later point, I discovered that the "Set explicit revision" step
> actually CHANGED the external definition's path.
> The revision on trunk which I tagged was pointing to a library in the
> same repository at a specific revision on trunk. The previous revision
> of my application on trunk was pointing to that library on a tag path.
> The explicit revision captured automatically by TortoiseSVN after the
> tag was created, included the tagged library instead of the trunk
> What could I have possibly done to cause this to happen? I don't want
> this to happen again but I have no idea why it could have happened. I
> don't know of anything I could have done to tell TortoiseSVN to change
> the external paths during the automated step.
> I did try creating a test tag from the same revision on trunk as
> before (using the same working copy), and this time the external's
> path did not change. It stayed on trunk as I expected it to in the
> first place.
No idea how this could have happened. There's no commit done to the
trunk at all so how the trunk could have changed - I really don't know.
Here's the steps done by TSVN:
The branch/tag dialog fetches all the externals data, stores them in an
Then, in the dialog where the progress is shown:
if you create the tag from your working copy (not a specific revision or
HEAD), the externals properties are modified directly in the working
copy, adding the peg revisions. If you create the tag from a specific
revision or HEAD, nothing is done yet.
then the branch/tag is created
if the branch/tag creation was successful, either the externals
properties are set to their original values (in case you create the tag
from the working copy), or if you created the tag from a specific
revision or HEAD, multiple "commits" are done directly on the
repository, modifying the svn:externals properties to add the peg
revisions. The default log message for these is "Changing externals to
then, if requested, the working copy is switched to the new branch/tag.
Please check the log and find out where exactly the externals changed to
the wrong url.
oo // \\ "De Chelonian Mobile"
(_,\/ \_/ \ TortoiseSVN
\ \_/_\_/> The coolest interface to (Sub)version control
/_/ \_\ http://tortoisesvn.net
To unsubscribe from this discussion, e-mail: [users-unsubscribe_at_tortoisesvn.tigris.org].
Received on 2014-05-23 20:17:02 CEST