Config for branch, not in branch

John A Meinel john at arbash-meinel.com
Sat Feb 4 18:15:48 GMT 2006


Jan Hudec wrote:
> On Thu, Feb 02, 2006 at 10:32:18 +0100, Vincent LADEUIL wrote:
>>>>>>> "Denys" == Denys Duchier <duchier at ps.uni-sb.de> writes:
>>     Denys> Vincent LADEUIL <v.ladeuil at alplog.fr> writes:
>>     >> But then, why bzr allows different emails for different
>>     >> branches ?
>>
>>     Denys>  bzr  allows  different  "profiles"  to  be  used  for
>>     Denys> different branches.  For example, if you contribute to
>>     Denys> two different projects foo  and baz, you might have an
>>     Denys>  email  of  ladeuil at foo.org  for  the  first  one  and
>>     Denys> ladeuil at baz.org for the second one.
>>
>>     >> Is email just a strange beast which cannot be versionned
>>     >> but need to be attached to a branch anyway ?
>>
>>     Denys> Well, it doesn't need to be attached to a branch: it
>>     Denys> can be set in the [DEFAULT] section rather than in a
>>     Denys> branch specific section.
>>
>> But  then  it's  not  usable   for  the  example  you  just  give
>> before. What  I was trying  to address was the  problem described
>> earlier in the  thread where you move you  branched directory and
>> suddenly your email is not correct anymore.
>>
>> I  just quit CVS  days ago  because I  was tired  of its  lack of
>> renaming features and here we  have some kind of renaming problem
>> :-)
> 
> Note, that the section name in ~/.bazaar/bazaar.conf is a *GLOB*. So if
> you always call foo branches foo.<something> and bar branches
> bar.<something>, you simply set the emails as:
> 
> [*/foo.*]
> email = me at foo.org
> [*/bar.*]
> email = me at bar.org
> 
> Of course, adapt to your naming convention.
> 
> Note that the patterns are currently rather simplistic (* matches
> absolutely anything) and that it might be changed to behave more
> shell-like (* not matching / and initial . - **/ will then match any
> path).
> 

I would like to see bzr standardize its glob mechanism. So when your
glob stuff makes it in, it should be used anywhere we expand globs.

The problem with the above though, is that our Config work doesn't
inherit rules. So doing:

[*/bar.*]
email = me at bar.org

[some/special/path/bar.foo]
commit = --strict

# At this point you have lost the 'email=me at bar.org' in bar.foo.

I'm not sure what the best thing to do is. But it is something that
messes things up when you do "bzr push somewhere", because that creates
a new entry for this exact directory, which means that any pattern
matched configuration is lost. (that is a really bad side-effect of the
current push implementation.)

John
=:->

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 249 bytes
Desc: OpenPGP digital signature
Url : https://lists.ubuntu.com/archives/bazaar/attachments/20060204/31c5497e/attachment.pgp 


More information about the bazaar mailing list