manage.... clones? or branches?

Krilin Wantun kwnz01 at yahoo.es
Wed Dec 22 16:38:54 GMT 2010


> On 22/12/10 14:48, Krilin Wantun wrote:
>
> Subject: manage.... clones? or branches?
>
> In Bazaar, clone and branch refer to the same operation.
>
>> Hi all, just new in here...
>>
>> I'm evaluating different CVS to see which fits my needs
> Terminology note: CVS (Concurrent Versions System) is the name of one
> particular VCS (Version Control System) :-)
>
>> and I'm
>> wondering if Bazaar con manage a main repository and several clones, I
>> work on web ASP.NET projects, where I have a main repository and then I
>> clone it to adapt to each customer, where I change a few files to adapt
>> the needs of the customer without afecting the main repository. Also,
>> doing so, sometimes I make changes on the client I have to commit back
>> to the main repository, so the schema is:
>>
>> REPO<----->  CLIENT 1
>>   |
>>   |<----------->  CLIENT 2
>> .... etc
>>
>> Can I manage this with Bazaar? I've been testing with branches (just
>> started using it) but Í'm not clear about that
> I believe the natural way to manage such a scenario in Bazaar (or Git or
> Mercurial - the underlying principles are not that different) would be
> to have a main branch (what you are calling "main repository", but
> "repository" has specific meaning in Bazaar different to how you are
> using it), and a number of client-specific branches branched from it.
>
> You would then do normal full merges from the main branch into client
> branches as necessary.
>
> When you have a change in a client branch which needs to go back to the
> main branch, you would do a cherrypick merge - the kind of merge which
> doesn't get recorded in the overall ancestry tree, because its a merge
> of a single change alone - not a change and all the changes which led up
> to it.
>
>
> Max.
>

Thank you for your response... I'm testing and so far it seems I can 
manage the scenario... a few more questions:

* Given this scenario, is it better to work with checkouts or branches?
* When I commit a change from CLIENT2 and push it to MAINBRANCH, is 
there an automatic way to propagate this push to all CLIENT1, CLIENT3, 
..., CLIENTX? I know I can perform this by editing a .BAT file (I'm on 
windows) pushing all changes from MAINBRANCH to every client, but, is 
there command to achieve this automaticly so I don't need to edit the 
BAT file each time I add a new CLIENT?
* After committing a revision, it seems the button MERGE does nothing, 
and I need to push the PUSH button instead, is this correct? What if I 
have parallel changes, MERGE should work then?


Thank you very much



More information about the bazaar mailing list