"C. Michael Pilato" <email@example.com> writes:
> I'm trying to decide how Subversion should interpret a command-line like the
> svn plist -v --depth files --changelist FOO /path/to/wc
> Does this mean, "For all objects in and under (to depth infinity)
> /path/to/wc that are in the FOO changelist, do a files-depth verbose
> property listing"?
> Or does it mean, "For all objects within files-depth of /path/to/wc and
> which are in the FOO changelist, do a verbose property listing?"
> My instinct is that the latter is more likely the intended use. But that
> causes interesting side-effects:
> $ svn info /path/to/wc --changelist FOO
> ## show nothing if wc isn't in FOO; shows wc only (empty-depth) if it is
> $ svn info /path/to/wc --changelist FOO --depth infinity
> ## ah, that's what i meant! info for all my FOO items!
> Of course, the former interpretation could be weird, too:
> $ svn update /path/to/wc --changelist FOO --depth files
> ## Grow/shrink only the FOO items to depth files? But they *are* files!
> Heaven forbid the interpration be something like, "For all objects within
> DEPTH of the specified explicit targets and in CHANGELIST, perform the
> operation to the shallower of DEPTH or DEPTH-from-TARGET." Yikes.
Ummm, how about:
For most commands, '--changelist FOO' restricts the scope to items
in the intersection of changelist FOO and the specified (or default)
depth. But for *some* commands, certain special commands, commands
with trust funds and their own ponies and idyllic summer vacations,
'--changelist FOO' changes their non-infinity default depth to
infinity, so that the changelist becomes the only restriction when
no depth restriction is explicitly given.
Then we just have to decide which commands are special in this way,
'info' being an obvious candidate. Are there any others; maybe
I know people will cry "inconsistency", but I'm not sure consistency
is a major factor in good UI anyway. Meeting intuitive expectations
is more important.
To unsubscribe, e-mail: firstname.lastname@example.org
For additional commands, e-mail: email@example.com
Received on Sun Dec 23 10:25:35 2007