[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

RE: Re: Tagging with Externals via Scripts

From: Bicking, David (HHoldings, IT) <David.Bicking_at_thehartford.com>
Date: 2007-09-17 15:32:19 CEST

> -----Original Message-----
> From: Jonathan Herriott [mailto:herriojr@gmail.com]
>
> Actually, after reviewing everything, I've decided that most
> tagging mechanisms don't actually follow the design of
> subversion. To me it seems like the way things are supposed
> to be tagged is by revision.
> Certain revisions of the main project point to specific
> revisions of the external projects.
>
> I guess my question is why are all tagging mechanisms focused
> on copying projects when it appears that revisions are
> supposed to be the tagging mechanism?

Unless I missunderstand what you are saying, the behavior you desire
(below) is exactly what is meant for externals. Usually, a TAG is a
copy of a folder at a particular revision. When you define your
external property, you can (and probably should) specify the revision of
the project you desire. Then, when you tag the folder, you also
identify the revision of the external project you want (since properties
are versioned). You only have a problem if you reference the external's
HEAD. There are other issues, of course. See my earlier post for the
ones I know.
(http://subversion.tigris.org/servlets/ReadMsg?listName=users&msgNo=7016
5) Thus far, nobody responded to my observations and feature requests,
but it has only been a few days.

In summary, I think you're only problem here is that your externals
definition is pointed at HEAD... Actually, after my fourth read, I think
I understand what you are doing. You are literally tagging the external
references when you tag your project, then changing your project's
externals to point to the new external snapshots.

Two points:

1) I think you're making it harder than necessary. Try simply setting
the revisions of your externals, then tagging, as I suggested above.
2) If you really need to tag those externals, make sure you're not
updating your project's properties after you tag instead of updating
your tag's properties. Note also that your TAG is now a BRANCH,
technically. If you're particular about the distinction between tag and
branch, I'd say you might want to change those externals in your
project, then TAG, then change them back.

>
>
> On 9/14/07, Jonathan Herriott <herriojr@gmail.com> wrote:
> > Andy,
> >
> > Actually, after looking into it, it seems that solution
> will not work
> > for me because of how the repository is set up. It looks something
> > like this:
> >
> > Root/
> > MyProject/
> > Trunk/
> > Branches/
> > Tags/
> > SomeOtherProject/
> > ...
> > ExternalProjects/
> > Trunk/
> > external1/
> > external2/
> > ...
> > externalN/
> > Branches/
> > Tags/
> >
> > I didn't set up the repository, so I have no control over the
> > structure. I think I'll have to do it by hand. Since I
> cannot modify
> > the structure to match what works with svncopy.pl, how am I able to
> > properly change the externals?
> >
> > Thanks,
> > Jon
> >
> > On 9/14/07, Jonathan Herriott <herriojr@gmail.com> wrote:
> > > I'll look into. Thanks!
> > >
> > > On 9/14/07, Andy Levy <andy.levy@gmail.com> wrote:
> > > > On 9/14/07, Jonathan Herriott <herriojr@gmail.com> wrote:
> > > > > Hi all,
> > > > >
> > > > > Sorry if this gets posted twice, but the first time I
> submitted,
> > > > > I wasn't registered, so I don't know if it got through or not.
> > > > >
> > > > > I've been having some issues with subversion which I
> was hoping
> > > > > you guys could rectify.
> > > > >
> > > > > First of all, my project is set up with about 5 external
> > > > > projects (which get updated quite frequently), and
> I'm looking
> > > > > to tag my project along with my externals via a script.
> > > > > The method I go about it is:
> > > > >
> > > > > svn pg svn:externals $MY_PROJECT
> > > > >
> > > > > and then I used the returned externals to tag them vi svn cp.
> > > > >
> > > > > I then tag my main project via svn cp, and I run into
> a problem
> > > > > while setting the externals to the new externals.
> > > > >
> > > > > I have tried using svn ps svn:externals --revprop -r HEAD
> > > > > $NEW_EXTERNALS $MY_PROJECTS_TAG.
> > > > >
> > > > > When I do a checkout of the project via svn co
> $MY_PROJECTS_TAG,
> > > > > the externals are still set to the original externals
> instead of
> > > > > the tagged externals.
> > > > >
> > > > > Any idea on why this is and how I can get around it?
> > > >
> > > > It is because when you copy to make the branch/tag, the
> externals
> > > > point at a "moving target" - they aren't fixed at a
> specific version.
> > > > By design. Everything was copied exactly.
> > > >
> > > > svncopy may be what you need.
> > > >
> http://svn.collab.net/repos/svn/trunk/contrib/client-side/svncopy/
> > > > svncopy.README
> > > >
> > >
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
> For additional commands, e-mail: users-help@subversion.tigris.org
>
>

*************************************************************************
This communication, including attachments, is
for the exclusive use of addressee and may contain proprietary,
confidential and/or privileged information. If you are not the intended
recipient, any use, copying, disclosure, dissemination or distribution is
strictly prohibited. If you are not the intended recipient, please notify
the sender immediately by return e-mail, delete this communication and
destroy all copies.
*************************************************************************

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Mon Sep 17 16:22:49 2007

This is an archived mail posted to the Subversion Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.