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

Re: svn commit: r19782 - in branches/changelist-feature/subversion: include libsvn_client svn

From: Ben Collins-Sussman <sussman_at_red-bean.com>
Date: 2006-05-23 17:41:45 CEST

On 5/23/06, sussman@tigris.org <sussman@tigris.org> wrote:

> New Revision: 19782
> Log:
> As a first experiment, make 'svn info --changelist FOO' work.

So I wrote a routine to crawl a working copy and discover all paths in
a changelist. Then I made 'svn info --changelist FOO' call the
routine, and append the changelist members to the already-existing
list of incoming targets. No sweat. (I imagine this is how --targets
works as well.)

There's a bit of a problem, however, with the UI.

In perforce, specifying '--changelist FOO' is unambiguous; the list
of paths is maintained by the server. In subversion, we need to crawl
to discover the list of paths, and that means we're suddenly sensitive
to the current working directory. Depending on CWD, '--changelist
FOO' might get an incomplete set of results. Or even worse, what if
you're not in a working copy at all?

An easy solution is to first crawl *upwards* until the 'wc-root' dir
is discovered, then crawl the entire working copy. This means that
'--changelist FOO' will always give complete results, regardless of
where you happen to be sitting in your working copy.

An uglier possibility is to add another companion switch
(--changelist-root blah/bloo) which indicates where to start the
crawl. Ick. But it would disambiguate a command like 'svn info
--changelist FOO /path/to/some/other/wc'. A user may not suspect that
the --changelist switch is discovering paths in the CWD's working
copy, rather than in /some/other/wc. It also would allow
'--changelist FOO' to function when the CWD isn't a working copy at
all. But ugh, maybe it's just too much.

To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Tue May 23 17:49:01 2006

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