Re: svn commit: r1326696 - in /subversion/trunk/subversion/libsvn_client: add.c client.h commit.c copy.c delete.c prop_commands.c util.c
From: Julian Foad <julianfoad_at_btopenworld.com>
Date: Tue, 17 Apr 2012 09:28:59 +0100 (BST)
Hyrum K Wright wrote:
> On Mon, Apr 16, 2012 at 5:22 PM, Greg Stein wrote:
In this function:
static svn_error_t *
>>>>>>...
> I think this may be the answer: a API which takes a wc_ctx, a
From those inputs we could generate a list of WC paths whose base matches that repos_relpath at some revision, and a list of WC paths whose copy-from origin matches that repos_relpath at some revision.
A repos_relpath only identifies a node when it is paired with a revision number.
*** Let's try to keep a repos_relpath with the revision number at which it exists, in all our APIs. ***
From a wc_ctx and a pathrev_t (which is repos_root, revision, and URL which is logically equivalent to having the repos_relpath) we could report a list of WC paths whose base or copy-from origin matches that location. That's what you need here.
The ultimate aim of that code seems to be to find a pristine node in the
For that, you don't need a list of all such WC nodes, you just need one. You need a reference to "a repository node that is stored in the WC".
Returning a WC abspath is insufficient, unless it also says whether it's found a base or a
Imagine for a moment that the WC data storage were laid out with NODES containing references to a new REPOS_NODES table that is indexed by (repos_id, rev, repos_relpath) and whose other columns are (kind, props, checksum, symlink_target). Then all you want is a reference into that table.
Would it help to think of an API along those lines, even without actually having structured the WC DB in that way?
>> Well... I think the real problem could be that you *already* knew
Agreed, although I don't know if it's feasible to gather and store that information before we reach the code in question.
> We could pass such information along in the baton, but the problem is
- Julian
|
This is an archived mail posted to the Subversion Dev mailing list.
This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.