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

Re: Partial checkout

From: John Mylius <mylius_at_pasemi.com>
Date: Tue, 29 Jan 2008 10:51:29 -0800

Matteo,

I've built svn from the latest source code and the sparse directory
support seems to be full functional and reliable. That's one option if
you can't wait for the official 1.5 release.

John

Ryan Schmidt wrote:

> On Jan 29, 2008, at 05:57, Matteo Tontini wrote:
>
>> Ryan Schmidt ha scritto:
>>
>>> On Jan 28, 2008, at 10:14, Matteo Tontini wrote:
>>>
>>> > I'm writing to ask suggestions about how to manage our particular
>>> > project structure.
>>> > We're developing with C# and Visual Studio 2005 professional.
>>> > We have a big solution made up of several groups of projects.
>>> > Different developers work on different sets of projects, organized
>>> > in solutions that realize partitions
>>> > of the global solution.
>>> > In practice we're using the 'Partitioned single solution' model as
>>> > illustrated in the following article:
>>> >
>>> > http://msdn2.microsoft.com/en-us/library/ms998208.aspx
>>> >
>>> > The problem is that our versioning system is Subversion.
>>> > With Subversion we've not been able to checkout partially the
>>> > content of the root folder of the
>>> > repository.
>>> > If I want to work with a partial solution and I want to checkout
>>> > only the solution file I need, and the related projects' dirs I'm
>>> > forced to checkout each separate project directory by itself.
>>> > Let's see an example:
>>> >
>>> > reposName/trunk
>>> > project1Dir/
>>> > project2Dir/
>>> > project3Dir/
>>> > globalSolution.sln
>>> > partitionedSolution1.sln
>>> > partitionedSolution2.sln
>>> >
>>> > If I want to work with partitionedSolution1.sln, that is made up of
>>> > project1 and project2 I have two kind of problems:
>>> >
>>> > - I have to checkout separately project1Dir and project2Dir in 2
>>> > subdirectories of my working copy.
>>> > But in this way I cannot commit or update globally the content of
>>> > my working copy, I'm supposed to commit and
>>> > update all the projects separately, instead.
>>>
>>>
>>> This should work:
>>>
>>> svn checkout -N url://to/reposName/trunk
>>>
>>> (This will checkout all the files but none of the directories.)
>>>
>>> cd trunk
>>> svn up project1Dir project2Dir
>>>
>>> (This will bring in just those directories that you specify.)
>>>
>>> (It's a single working copy and you can do commits across all of it
>>> all at once, just like you want.)
>>>
>>>
>>> In Subversion 1.5, I believe there will be a different way to handle
>>> this (sparse directories feature).
>>
>>
>> Thank you very much Ryan,
>>
>> I tried in that way but I still got problems due to Issue 695 (non-
>> recursive checkout bug).
>> In fact if another developer modifies 'project3Dir' (the directory
>> that i didn't checked out) and commits
>> changes, the next time I update the root of my working copy I will
>> get the following error:
>>
>> Error: Directory 'C:\develop\trunk\project3Dir' is missing
>> Error: Please execute the "Cleanup" command.
>>
>> After executing cleanup if I try to update the whole repository
>> (under trunk) will be checked out
>> in my working copy.
>>
>> Did I miss anything?
>
>
> You probably didn't miss anything. It's long been said that the non-
> recursive checkout feature is a bit broken, and you seem to be
> running into one consequence of that. I guess you'll have to wait for
> the sparse directory feature of 1.5 after all, for more reliable
> operation.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe_at_subversion.tigris.org
> For additional commands, e-mail: users-help_at_subversion.tigris.org
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe_at_subversion.tigris.org
For additional commands, e-mail: users-help_at_subversion.tigris.org
Received on 2008-01-29 19:51:55 CET

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