[MERGE] Pass create_prefix paremeter to BzrDir.push_branch.
Jelmer Vernooij
jelmer at samba.org
Tue Jun 9 03:09:37 BST 2009
Robert Collins wrote:
> On Tue, 2009-06-09 at 01:41 +0200, Jelmer Vernooij wrote:
>
>> The regular way of detecting that a prefix doesn't
>>
>>>>>> exist will not work for Subversion, since control dirs are
>>>>>>
>> "virtual" and
>>
>>>>>> therefor always exist.
>>>>>>
>>>>>>
>>>>> Can't you tell via log information?
>>>>>
>>>>>
>>>> I'm not sure I follow. How could I use log to tell the intent of
>>>>
>> the
>>
>>>> caller of the API?
>>>>
>>>>
>>> I mean log of the svn virtual fs. The intent (to push) is pretty
>>> clear :P.
>>>
>>>
>> I still don't follow. How should I use the virtual fs to guess that
>> the
>> user wanted bzr-svn to create the prefix?
>>
>
> We must be talking past each other. You said 'The regular way of
> detecting that a prefix does not exist will not work for subversion'. I
> was proposing a way that might.
>
Perhaps I should explain the problem a bit better. Right now "bzr push"
does the following:
First it attempts to open the target branch. If this doesn't work it
attempts to create a new bzrdir inplace. If that fails because of
missing parent directories, it'll create them if --create-prefix was
specified or error out otherwise.
Unfortunately this doesn't work for Subversion control directories since
they will always exist. Branches get created in Subversion when
BzrDir.create_branch() or BzrDir.push_branch() get called. My patch lets
bzr pass the create_prefix argument to BzrDir.push_branch() so it knows
when to create the branch parents.
Can you explain what should be working differently exactly?
Cheers,
Jelmer
More information about the bazaar
mailing list