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

Re: suggestion for tortoise

From: Andy Levy <andy.levy_at_gmail.com>
Date: Thu, 3 Mar 2011 09:59:21 -0500

On Thu, Mar 3, 2011 at 09:26, Eske Rahn <Eske_at_jo-informatik.dk> wrote:
> Hello Tortoise guys&girls
>
> First let me say that I think Tortoise subversion is a great product, that we are happy users of. THANKS!
>
> Often we have several related sub projects in a larger project as
>  Mainproject\PartA
>  Mainproject\PartB
>  Mainproject\PartC
>  Mainproject\PartD
>  Mainproject\PartE
> et cetera
> This can be many Parts, and some of them 100% out of my scope.
>
> Assume then that at first I think I shall never work with anything but PartA
> And thus check out PartA only in a locale MainProj\PartA folder
> Maybe later I find out that I should do something on say PartD (but still not the rest) so I also check out PartD in a locale parallel folder.
>
> The suggestion is then to allow commit et cetera on the local MainProj folder also, even though it hasnt got a .svn folder!
> This should be allowed IF (and only if) ALL sub folders that have a .svn points to paralells in the same tree.
>
> This COULD be made even more elegant by scanning the whole subtree (not only level 1) until folders with .svn is found. If ALL .svn subfolder-positions match the same positions in a subversion-tree the function should be able to handle it as a whole!
>
> In the above example assume we also have
>  Mainproject\PartF\SubpartA
>  Mainproject\PartF\SubpartB
> in subversion
>
> and maybe I have only
>  C:\MainProj\PartA
>  C:\MainProj\PartD
>  C:\MainProj\PartF\SubPartB
> checked out from subversion to my local disk.
>
> Then handling MainProj as a whole would still be very well-defined, intuitive and useful in daily work.
>
> I could then handle all that is relevant to me in a project as a whole, without filling my disk with a lot of stuff, that is none of my business anyway.

Subversion already has this built in, but done a little differently
and you'll have to do a little more work (Subversion can't guess at
your intentions). It's called "Sparse Directories". Steps:

1) Check out MainProj, but non-recursively (recursive is the default);
just check out the immediate children.
2) Update each child, setting it to recursive, as needed.
3) Now you can commit from MainProj

TSVN's documentation on this feature is at
http://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-dug-checkout.html#tsvn-dug-checkout-depth

I prefer to use the command-line client for this as it's easier *for
me* (Tortoise will still read & manage this WC just fine). There, the
steps would be:

svn co URL c:\MainProject --depth immediates
cd \MainProject
svn up --set-depth nfinity PartA

Then later:
svn up --set-depth infinity PartD

Still later:
svn up --set-depth immediates PartF
cd PartF
svn up --set-depth immediates SubPartB

------------------------------------------------------
http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=4061&dsMessageId=2709305

To unsubscribe from this discussion, e-mail: [users-unsubscribe_at_tortoisesvn.tigris.org].
Received on 2011-03-03 16:00:06 CET

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