[rfc] bzr-colo into core

Alexander Belchenko bialix at ukr.net
Tue Mar 22 15:46:39 UTC 2011


John Arbash Meinel пишет:
> On 3/22/2011 3:26 PM, Alexander Belchenko wrote:
>> John Arbash Meinel пишет:
>>> On 3/22/2011 2:08 PM, Alexander Belchenko wrote:
>>>> Gordon Tyler пишет:
>>>>> On 3/22/2011 2:14 AM, Nicholas Allen wrote:
>>>>>> There's also something elegant about the simplicity of 1 directory = 1
>>>>>> branch that I think gets lost like this. It's always clear to me which
>>>>>> branch I'm working on when they are in separate directories.
>>>>> I have noticed this myself. I often have to use `bzr info' to remind
>>>>> myself which branch I'm working on. And there, it's mixed in with a
>>>>> bunch of other cruft that makes it a little hard to spot -- you have to
>>>>> mentally parse a URL. If this bzr-colo thing goes through, it would be
>>>>> nice to make this easier/nicer. Perhaps add a line to the beginning of
>>>>> the `bzr status` output that says which branch you're on.
>>>>>
>>>>> Ciao,
>>>>> Gordon
>>>> The recommended way for colo is: `bzr colo-branches`. Have you tried it?
>>>>
>>> 'bzr nick' just gives you the branch nickname. Which can be set to
>>> something different, but defaults to the basename of the branch.
>>>
>>> John
>>> =:->
>> Yes, it can help in the simple cases (i.e. most of the time). But it
>> does not help you when you create colo branches in subdirectories (that
>> mode is supported actually).
>>
>> C:\work\Bazaar\plugins\qbzr>bzr colo-branches
>>   0.18
>>   0.19
>>   0.20
>>   experimental/nopygments
>>   experimental/post-commit
>>   experimental/post-commit/gary
>>   review/qdiff
>> * trunk
> 
> You didn't show the output of "bzr nick".
> 
> If colo is using lightweight checkouts to point to the branches, you'll
> get "nopygments" and "post-commit" I suppose, rather than
> "experimental/post-commit".

Yes, that's my point. `bzr nick` will show you the last part of the 
branch path. Most interesting here that bzr-colo has "colo-fetch" 
command that fetches external project into new colo-workspace, the help 
says:

Description:
   This creates a colocated workspace at the specified location with a 
single
   branch named "origin/trunk" that has the contents of the external 
project.
   If you would like to specify a different name for the new branch, use the
   ``--trunk-name`` option.  If you don't specify a TO_LOCATION, then one
   will be derived from the final component of the FROM_LOCATION (similar
   to ``bzr branch``.

So if someone use colo-fetch to create mirror in the colo:origin/trunk 
and then creates local development branch as simple colo:trunk, then 
`bzr nick` will show "trunk" for both branches. Is it good?

> Most interesting for me is to see someone actually using nested
> branching, which is something I pushed for in the model for a long time,
> but haven't seen anyone else really advocate.

I'm not sure what is your point here, but I've been that person who 
persuaded Neil to properly support complex branch names as 
colo:xxx/yyy/zzz because it's perfectly valid today in the core bzr.



More information about the bazaar mailing list