You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by Lynch <ly...@vmails.net> on 2004/07/07 05:39:55 UTC

[Feature Suggestion]checkout branches and tags directory

Hello, all,

I'm a new user to Subversion and I'm new to this ml. I don't know if
this feature has already been proposed or discussed. But I did some
search on ml and found nothing about it.

We know that in Subversion, branches and tags are simply copies of a
particular revision of a directory. In standard subversion repository
layout, branches & tags directory always contains a lot of these
branches and tags. Although these branches and tags are handled in a
highly space-efficient manner in the Subversion repository, but when
user checkout and export on the "branches" and "tags" directory, it will
consume large amount of traffic from server to client, and also large
amount of disk space.

But in fact, almost no one would like to checkout or export the whole
content of 'branches' and 'tags' directory at any time. One would check
out file:///repos/tags/snapshot-20040707 or file:///repos/branches/rc-2,
but never file:///repos/tags or file:///repos/branches. (I'm new and in-
experienced, please correct me on this.)

My Suggestion:

  1. Introduce a special property on directory, say
              svn:non-recursive

  2. modify svn client, when user use 'svn co url' to checkout/export 
     a directory and it's subdirectory recursively, svn will check each
     directory on 'svn:non-recursive' property before checkout.

     if the directory is set the 'svn:non-recursvie' 
     property, svn will not checkout/export the files and subdirectory
     under this directory as if '--non-recursive' parameter of 
     'svn checkout' is set

  3. add 'svn:non-recursive' property to 'branches' and 'tags' directory
     in svn repository to prevent user from checking out these directory
     inproperly.

  4. This feature have no influence on checkout/export the subdirectory
     under the 'branches' and 'tags' directory.



---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: [Feature Suggestion]checkout branches and tags directory

Posted by Ben Collins-Sussman <su...@collab.net>.
On Wed, 2004-07-07 at 00:39, Lynch wrote:

> 
>   1. Introduce a special property on directory, say
>               svn:non-recursive

Have you noticed there's already a non-recursive switch to the checkout
command?  :-)

    svn checkout -N URL

If you're using svn 1.1 (today's /trunk), then you can change into the
working copy and run 'svn checkout sometag' and the tag will appear.



---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: [Feature Suggestion]checkout branches and tags directory

Posted by Brian Mathis <bm...@directedge.com>.
Yes, you're right, it would be very rare that you'd want to check out 
the whole branches or tags directory.  But since you don't want to, just 
don't do it!  If you only want 1 tag or branch, just use that URL instead:
    file:///repos/tags/project/1.0

And it will not get everything else, just the stuff under that directory.

Did you not use subdirectories in your tags/branches dirs?  Well, then 
you'll have to reorganize your dirs.  It is not easy to check out only 1 
file from svn, you must get a whole directory.  Organizationally, it 
would be better to use sub-directories anyway.


Lynch wrote:

>Hello, all,
>
>I'm a new user to Subversion and I'm new to this ml. I don't know if
>this feature has already been proposed or discussed. But I did some
>search on ml and found nothing about it.
>
>We know that in Subversion, branches and tags are simply copies of a
>particular revision of a directory. In standard subversion repository
>layout, branches & tags directory always contains a lot of these
>branches and tags. Although these branches and tags are handled in a
>highly space-efficient manner in the Subversion repository, but when
>user checkout and export on the "branches" and "tags" directory, it will
>consume large amount of traffic from server to client, and also large
>amount of disk space.
>
>But in fact, almost no one would like to checkout or export the whole
>content of 'branches' and 'tags' directory at any time. One would check
>out file:///repos/tags/snapshot-20040707 or file:///repos/branches/rc-2,
>but never file:///repos/tags or file:///repos/branches. (I'm new and in-
>experienced, please correct me on this.)
>
>My Suggestion:
>
>  1. Introduce a special property on directory, say
>              svn:non-recursive
>
>  2. modify svn client, when user use 'svn co url' to checkout/export 
>     a directory and it's subdirectory recursively, svn will check each
>     directory on 'svn:non-recursive' property before checkout.
>
>     if the directory is set the 'svn:non-recursvie' 
>     property, svn will not checkout/export the files and subdirectory
>     under this directory as if '--non-recursive' parameter of 
>     'svn checkout' is set
>
>  3. add 'svn:non-recursive' property to 'branches' and 'tags' directory
>     in svn repository to prevent user from checking out these directory
>     inproperly.
>
>  4. This feature have no influence on checkout/export the subdirectory
>     under the 'branches' and 'tags' directory.
>  
>

-- 
Brian Mathis
http://directedge.com/b/


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org