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

Re: Recommended UI tweaks for depth selection and filtering

From: Jack Repenning <jrepenning_at_collab.net>
Date: 2007-10-01 20:32:37 CEST

On Sep 24, 2007, at 6:48 PM, C. Michael Pilato wrote:

> I then checkout the www directory with depth infinity:
> [The following is my ideal syntax ... it might not pass community
> muster,
> though.]
> $ svn co wc/www ## maybe "svn co --depth infinity wc/www"?

Since you're going for "consistency," svn co should consistently do
"--depth infinity" if given no more explicit guidance. So the two
alternatives you present here should be equivalent.

But in as much as you're going for "consistency," neither should be
allowed, because co ordinarily requires an URL. Of course, requiring
an URL here is ridiculous:

   $ svn co --depth immediates http://blah/blah/... newtop
   $ cd newtop/subdir
   $ svn info
     <copy URL>
   $ svn co --depth infinity <paste-URL>

Perhaps this should be coupled with two extensions to "info":

  - "svn info --field=XXX" (XXX being, say, "URL")
  - "svn info --quiet" (transforming, say, "URL: http://..." into
merely "http:.//...")

... enabling

   $ svn co --depth immediates http://blah/blah/... newtop
   $ cd newtop/subdir
   $ svn co --depth infinity `svn info --field=URL --quiet`

But this is scope creep to rescue what may have been a bad idea in
the first place (and back-ticking a subcommand is a pretty extreme
measure for rescuing something touted as the primary purpose of the
whole "--depth" initiative). It would be far more "consistent" to
use the command that already accepts a working-copy object and
figures out its URL:

   $ svn co --depth immediates http://blah/blah/... newtop
   $ cd newtop/subdir
   $ svn up --depth infinity

The idea of "consistency" that leads you to propose this change is
myopic and pedantic. "Consistency" of user experience operates as a
sort of average over many axes: within the command set, over history,
within the work flows, etc. The idea that update can, like checkout,
change the depth is entirely consistent with the user experience, and
apparently (given that it was the initial implementation) with at
least Karl's hind-brain as well (not to mention my own).

Jack Repenning
Chief Technology Officer
CollabNet, Inc.
8000 Marina Boulevard, Suite 600
Brisbane, California 94005
office: +1 650.228.2562
mobile: +1 408.835.8090
raindance: +1 877.326.2337, x844.7461
aim: jackrepenning
skype: jrepenning

Received on Mon Oct 1 20:32:46 2007

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