> Giacomo Pati wrote:
>
> Quoting Carsten Ziegeler <[EMAIL PROTECTED]>:
>
> > > Sylvain Wallez wrote:
> > >
> > > Hi cocooners,
> > >
> > > Now that we've got two branches for C2, what's the easiest way to
> > commit
> > > changes on both ? I made two checkouts (HEAD and cocoon_20_branch) :
> > do
> > > I have to manually copy modified files from one checkout to the other
> > > and issue 2 commits, or is there a way to commit on both branches at
> > > once ?
> > >
> > I think the only working solution is to make two commits. This is some
> > overhead we have to cope with but I think it's unavoidable.
> >
> > My question is: Should we keep both branches in sync until we release
> > the 2.0 final? I think we should, so I would suggest to really make
> > always two submits.
> > What do you all think?
>
> I don't see it as a necessity that the HEAD branch have to be in
> sync after each
> commit to the 2.0 branch. But I think we should use the CVS to
> sync it for us if
> we need it and not commiting stuff here and there. So, lets see
> how CVS can help
> us synching the branches.
>
> 1. Lets commit stuff needed for beta 2 to the 2.0 branch only.
> 2. Lets commit new/experimental stuff to the HEAD branch only.
+1 for 2.

> 3. Lets suppose that all that has been/will be commited to the
> 2.0 branch will
>    make its way into the HEAD branch someday.
> 4. If someone wants/needs to sync the HEAD branch with the 2.0 branch the
>    following procedure should be applied (the names in the
> brackets denotes
>    the local branch directory you need to be cd'ed]:
>
>    #make the changes available in the 2.0 branch (if needed)
>    [20_branch] cvs ci -m "..."
>
>    #make your HEAD branch up to date (if needed)
>    [HEAD] cvs upd
>
>    #join the HEAD with the 2.0 branch from the last merge point(*).
>    [HEAD] cvs upd -j cocoon_20_branch_mergepoint -j cocoon_20_branch
>
>    #cleanup merge conflicts (yes, this can be the hard work)
Exactly!

>    [HEAD] edit ...
>
>    #commit the joined version to the HEAD branch
>    [HEAD] cvs ci -m "..."
>
>    #move the cocoon_20_branch_mergepoint tag to the head of the 2.0 branch
>    [20_branch] cvs tag -d cocoon_20_branch_mergepoint
>    [20_branch] cvs tag cocoon_20_branch_mergepoint
>
> (*)The first time we do that there is no mergepoint tag, so the
> '-j mergepoint'
> must not be written.
>
> There are some drawback to this procedure.
> 1. Lots of merge conflict will happen because of keyword expansion we use
>    in the source files ($Revision 1.2.1.$ etc.). Using the -kk options
>    on the join command can corrupt binary files if my understanding
>    of that option is correct.
> 2. The log comments entered on branch commits are not joined into
> the HEAD
>    branch.
>
Yes and because of these two reasons I would suggest that we keep both
branches in sync which means all commits for the 20 branch should also
be applied to the 2.1 branch (except the stuff which is really only for
2.0). Of course, we should not add all commits of the 2.1 branch to
the 2.0. So keeping in sync is perhaps not the right formulation.
I could imagine that it is a very hard work to join the branches after
some weeks without making mistakes.


Carsten

Open Source Group                        sunShine - b:Integrated
================================================================
Carsten Ziegeler, S&N AG, Klingenderstrasse 5, D-33100 Paderborn
www.sundn.de                          mailto: [EMAIL PROTECTED]
================================================================

> Any comments?
>
> Giacomo
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, email: [EMAIL PROTECTED]
>


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, email: [EMAIL PROTECTED]

Reply via email to