Hello, I am trying to figure out a generic step-by-step procedure for efficient spare checkouts. There are two approaches to sparse checkouts: blacklist and whitelist.
To explain the difference, assume the following repository structure: /trunk /trunk/A /trunk/B /trunk/C where I am not interested in checking out the folder "A". Whitelist means "Only checkout B and C". Blacklist means "Do not checkout A". Initially, both looks the same. But when a new folder /trunk/D is added, and you updated your working copy afterwards, it shouldn't appear for whitelist, since D was not part of the whitelist, but it should appear for blacklist, since D is not part of the blacklist. Whitelist was quite trivial to get to work: Checkout /trunk with depth = empty Update /trunk/B with sticky depth = infinity Update /trunk/C with sticky depth = infinity I can also get blacklist to work like this: Checkout /trunk with depth = infinity Update /trunk/A with sticky depth = exclude But here's the problem: I wanted to exclude /trunk/A *precisely* because it is huge in size; I don't want to wait for it on checkout. But the above approach creates a full checkout at first, only to throw away A afterwards. Not very efficient. Alas so far I have failed to find a different routine that avoids having to download A in its entirety. Here's what I tried: *Attempt 1:* Checkout /trunk with depth = empty Update /trunk/A with depth = empty Update /trunk/A with sticky depth = exclude Update /trunk with depth = infinity Result: trunk remains empty. *Attempt 2:* Checkout /trunk with depth = empty Update /trunk/A with depth = empty Update /trunk/A with sticky depth = exclude Update /trunk with sticky depth = infinity Result: this overrides "exclude" for A, restores it and downloads its content *Attempt 3:* Checkout /trunk with depth = children Update /trunk/A with sticky depth = exclude Update /trunk with depth = unknown Result: trunk is populated, but B and C remain empty since they were checked out with depth = empty Is there any way I can change trunk's depth to "sticky infinity" but at the same time retain A's depth = exclude? Thank you Chris -- You received this message because you are subscribed to the Google Groups "TortoiseSVN" group. To unsubscribe from this group and stop receiving emails from it, send an email to tortoisesvn+unsubscr...@googlegroups.com. To view this discussion visit https://groups.google.com/d/msgid/tortoisesvn/c553681f-81d4-48f1-b586-6e54fd2a71abn%40googlegroups.com.