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

RE: Update to revision always updates externals to HEAD

From: Bruce J Clark <BJClark_at_metrol.co.uk>
Date: Fri, 2 Dec 2016 12:54:45 +0000

Hi,

That sounds like a classic Subversion issue, rather than an issue with TortoiseSVN. If so, the topic you want to research is Subversion peg and operative revisions. Try looking at the Subversion Red Book (http://svnbook.red-bean.com/en/1.7/svn.advanced.pegrevs.html).

Basically, if you want a particular revision of your main repo to extern to a particular revision in another repo, ensure that the external references the revision you want. Typically, you'd want to do that by specifying the peg revision for the extern. If that is done, the update will always update the extern files to the specified revision. If you want the main repo to use a newer revision in the other repo, change the extern to set the new revision and commit the change to the externs.

The error that reports that the location doesn't exist at a particular revision occurs where the extern uses an operative revision rather than a peg revision. The Subversion Red Book explains it better than I can in a single sentence but it's related to how the other repo is searched for the path and revision - the operative revision finds the path and then walks back to the revision; the peg revision finds the repo revision first and then gets the path. If a particular path doesn't exist in the HEAD of the other repo, it can't be found and so can't be "walked back" to the specified operative revision. If the extern is specified as a peg revision, then the search starts at the specified revision, where the path definitely exists.

Hope this helps,
Bruce

This email and any attachments or links herein are confidential and may contain Metrol Technology Limited proprietary information that is legally privileged or otherwise protected from disclosure. It is solely intended for the person(s) named above. If you are not the intended recipient, any reading, use, disclosure, copying or distribution of all or parts of this email or associated attachments or links to other web locations, is strictly prohibited. If you are not the intended recipient, please notify the sender immediately by replying to this message or by telephone and delete this email and any attachments or links permanently from your system. Metrol accepts no liability for any damage of whatever nature caused by this email.

-----Original Message-----
From: Olivier Sannier [mailto:obones_at_free.fr]
Sent: 02 December 2016 12:13
To: users_at_tortoisesvn.tigris.org
Subject: Update to revision always updates externals to HEAD

Hello,

I'm using TortoiseSVN 1.9.5 here and am facing a very strange issue when I use the "Update to revision" option.
What I'm expecting is that my entire working copy is updated at the revision that I asked for, say 66850 for instance because I did not check the "Omit externals" checkbox.

However, my issue is that the working copy is updated at the revision but all externals are updated at the HEAD revision.
And this leads to errors because some externals targets have been removed in HEAD.
Here are an update log final lines:

C:\Path\To\FirstExternal\SubDir\File.txt
C:\Path\To\SecondExternal
URL
  'https://svnserver/svn/Repos/trunk/Some/Where/Removed'
  at revision 70574 doesn't exist
At revision: 66850

As you can see, it complains that the path does not exist in HEAD but still says that the entire update worked on revision 66850.

What am I missing here? Is there some sort of option that I should have configured?

Regards.
OBones

------------------------------------------------------
http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=4061&dsMessageId=3195767

To unsubscribe from this discussion, e-mail: [users-unsubscribe_at_tortoisesvn.tigris.org].

------------------------------------------------------
http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=4061&dsMessageId=3195771

To unsubscribe from this discussion, e-mail: [users-unsubscribe_at_tortoisesvn.tigris.org].
Received on 2016-12-02 13:55:03 CET

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