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

Re: check out everything except, '<this>' subfolder should be shallower

From: Lathan Bidwell <lathan_at_andrews.edu>
Date: Thu, 24 Jan 2013 10:38:26 -0500

On 01/24/2013 10:07 AM, Johan Corveleyn wrote:
> On Thu, Jan 24, 2013 at 3:50 PM, Lathan Bidwell <lathan_at_andrews.edu> wrote:
>> On 01/24/2013 05:14 AM, Philip Martin wrote:
>>> Lathan Bidwell <lathan_at_andrews.edu> writes:
>>>
>>>> How can i checkout out this sample repository without downloading the
>>>> /b/media/ and /d/media folders?
>>>>
>>>> The example i have (with checking it all out first is):
>>>> svn checkout '<repository>' --depth immediates
>>>> svn update --set-depth exclude /b/media
>>>> svn update --set-depth exclude /d/media
>>>> svn update --set-depth infinity *
>>> You can do an empty checkout, use update and switch to make the
>>> directories into files, update the working copy to infinity, switch the
>>> directories back to empty and then update to excluded:
>>>
>>> svn co URL --depth empty wc
>>> svn up --depth empty wc/b
>>> svn up --depth empty wc/d
>>> svn sw ^/some/file --ignore-ancestry wc/b/media
>>> svn sw ^/some/file --ignore-ancestry wc/d/media
>>> svn up --set-depth infinity wc
>>> svn sw ^/b/media --set-depth empty --ignore-ancestry wc/b/media
>>> svn sw ^/d/media --set-depth empty --ignore-ancestry wc/d/media
>>> svn up --set-depth exclude wc/b/media
>>> svn up --set-depth exclude wc/d/media
>>>
>> So by using switch you make it look like a file so it won't try to update
>> its contents, then you switch it back to a directory and exclude / depth
>> empty it.
>>
>> Would that switch call need the --relocate flag?
>>
>> That solves half of the problem, I realize my example tree probably wasn't
>> extensive enough. The /b/media and /d/media subfolders are like 3 and 4
>> folders down in the tree, so its more like /b/1/2/3/media, .... It would be
>> ideal to not have to check out --depth empty all the parents directories.
> As of 1.7, 'svn update' has a '--parents' option that helps with that
> (see [1]). It creates any parent directory necessary, so you can do
> this:
>
> svn co URL --depth empty wc
> svn up --parents --depth empty wc/1/2/3
> ...
>
>> I
>> suppose I should just checkout out those exact directories in tmp and then
>> move them into the appropriate location?
> That won't work. Your checked out subdir will be a separate working
> copy, which you then embed in your larger working copy. Those will be
> embedded working copies, i.e. not the same as when the subdir is just
> another part of a (sparse) working copy. With embedded working copies,
> an 'svn up' of the parent working copy will not update the child
> working copy (it will regard is as an unversioned part).
>
>
> [1] http://subversion.tigris.org/issues/show_bug.cgi?id=3748
> (Implement --parents option for svn update)
>

Okay, so thank you for showing me that use of switch and the new flag of
--parents

Have a good day,

Lathan Bidwell
Received on 2013-01-24 16:39:10 CET

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

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.