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

Re: New idea for the checkout process

From: Stefan Küng <tortoisesvn_at_gmail.com>
Date: Mon, 08 Jun 2009 20:55:29 +0200

Robert Dailey wrote:
> No opinions on this? I realize it's quite a big task but just curious as
> to what everyone thinks, especially you Stefan.

Sorry, had a very bad weekend, and I'm still not really well.

> I had an interesting idea for a new checkout process, I wanted to
> gather opinions on what you guys thought of this.
>
> I'm sure you have all seen the installers that allow you to
> customize the items that it places on your system. Not only that,
> but it allows you to customize *how* the item is installed on your
> system. For example, you can install 'Entire contents' or have it
> "Ask for CD" when that item is accessed and install on-demand. I
> believe the old MS Office installers did this.
>
> I'm thinking that this behavior maps well to Subversion checkouts.
> With the advent of sparse directories, this becomes ever more
> apparent. Right now to do complex sparse checkouts, especially at
> varying levels of the working copy tree, there are several steps
> involved. What if we provided a "Repository Browser" view of the
> desired checkout area, and within that tree, we applied a button in
> front of each node in the tree that gave custom options for checking
> out that particular item. For example, consider this tree:
>
> /my_project
> /code
> /c-plus-plus
> /c-sharp
> /art
> /documents
>
> In this case, I only want my checkout to look like this:
>
> /my_project
> /code
> /c-plus-plus
> /documents
>
> Everything else, I do not want. Additionally, I only want the
> immediate files of the /c-plus-plus directory, not fully recursive.
> Remember that combo box in the current checkout dialog that shows
> the depth for that item? Well this combo box would be what appears
> when you click the button next to each node in the tree. So, when I
> do my checkout, I tell it the path:
>
> svn://myrepo/my_project
>
> After that, I press a new button called "Customize Checkout" or
> "Sparse Checkout" or something along those lines. At that point in
> time, something similar to the Repo Browser appears, but without the
> list view on the right. Only a tree. To the left of the name of each
> node, there is a button, kind of like this:
>
> + [X] my_project
> |--+ [X] code
> | |--+ [X] c-plus-plus
> | |--+ [X] c-sharp
> |--+ [X] art
> |--+ [X] documents
> Please excuse the poor ascii art. In the above example, each [X] is
> a button. This button, when pressed, would cause a context menu to
> pop up with a few options. These options would essentially represent
> "Checkout depth":
>
> * Fully Recursive
> * Immediate children (including folders)
> * Only file children
> * Only this item
> * Exclude
>
> In this case, to get my desired working copy that I want, I would
> select "Exclude" for 'art' and "Exclude" for c-sharp. And since I
> only want c-plus-plus's files, I would select "Only file children"
> for it.
>
> When I press OK, and my checkout is being downloaded, I get only the
> exact structure I want in one convenient operation. I have attached
> a screenshot of the MS Office 2007 installer, which gives a good
> example of how the tree customization should look like. The button
> styles, of course, could be different and perhaps more compact.
>
> Let me know what you guys think.

Would be a good UI. But a hell lot of work since there are no suitable
standard controls to use here.
And I'm not sure if it's worth the work for something most users will
never even use.

Stefan

-- 
       ___
  oo  // \\      "De Chelonian Mobile"
 (_,\/ \_/ \     TortoiseSVN
   \ \_/_\_/>    The coolest Interface to (Sub)Version Control
   /_/   \_\     http://tortoisesvn.net
------------------------------------------------------
http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=757&dsMessageId=2360411
To unsubscribe from this discussion, e-mail: [dev-unsubscribe_at_tortoisesvn.tigris.org].

Received on 2009-06-08 20:56:01 CEST

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