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