[cvsnt] Back-merging unchanged files

Prochazka, Jan Jan.Prochazka at brooks.com
Thu Jan 20 14:53:51 GMT 2005


This trouble is here for a while. 
It seems, that the source of it is back and forth merge. The reason for
it "might be" necessity to store mergepoints somewhere and hence
creating another revisions for them.
CVSNT community responses were two so far:
1) "you should not do merging back and forth"
2) "no changes revision are fine, not causing much file growth and are
not harmful the repository at all"

However, I also think that this behavior is quite problematic. We
started to use different branch per different developer group to
separate changes from each others and did merge to head to create the
release only. But because the trouble with empty changes we could not
use it as it was virtually impossible to track down the changes.
The same thing if somebody use branches eg. to separate work on
particular bug/features and needs to update from HEAD until the branch
is closed.

We now create new branch after each merge branch to HEAD. That reduced
amount of revisions with no changes significantly, but, surprisingly,
amount of branches grows now <sigh> :-((

Nice day to all,
Jan


> -----Original Message-----
> From: cvsnt-bounces at cvsnt.org [mailto:cvsnt-bounces at cvsnt.org] On
Behalf
> Of Lars Christensen
> Sent: Thursday, January 20, 2005 04:25
> To: cvsnt at cvsnt.org
> Subject: [cvsnt] Back-merging unchanged files
> 
> Hi,
> 
> If I merge change from HEAD to branch and then later want to merge
other
> changes from branch to HEAD, I get an empty revision for every file
that
> was merge to the BRANCH the first time. Even if I repeat and merge
from
> BRANCH again, I get another empty revision.
> 
> cvsnt doesn't seem to set mergepoint on these empty revisions.
> 
> It a bit problematic because it makes it alot harder to get an idea of
> what files actually needed a merge. Is it really necessary?
> 
> The following commands
> 
> cvs tag -b branch
> echo Hello Universe >> file.txt
> cvs commit -m modified
> cvs up -r branch
> cvs up -j HEAD
> cvs commit -m merge-to-branch
> cvs up -A
> cvs up -j branch
> cvs commit -m merge-to-head
> cvs up -j branch
> cvs commit -m merge-to-head
> 
> Reveal this log, and a +0-0 revision for every merge-to-head:
> 
> RCS file: c:\tempcvsroot/module/file.txt,v
> Working file: file.txt
> head: 1.7
> branch:
> locks: strict
> access list:
> symbolic names:
>         branch: 1.1.0.2
> keyword substitution: kv
> total revisions: 8;     selected revisions: 8
> description:
> 
> <snip>
> 
> ----------------------------
> revision 1.4
> date: 2005/01/20 09:13:07;  author: lac;  state: Exp;  lines: +0 -0;
> kopt: kv;  commitid: 5a041ef76233822;  filename: file.txt;
> merge-to-head
> ----------------------------
> revision 1.3
> date: 2005/01/20 09:13:06;  author: lac;  state: Exp;  lines: +0 -0;
> kopt: kv;  commitid: 5a041ef7622381f;  filename: file.txt;
> merge-to-head
> ----------------------------
> revision 1.2
> date: 2005/01/20 09:13:02;  author: lac;  state: Exp;  lines: +1 -0;
> kopt: kv;  commitid: 5a041ef761e3812;  filename: file.txt;
> modified
> ----------------------------
> revision 1.1
> date: 2005/01/20 09:13:01;  author: lac;  state: Exp;  kopt: kv;
> commitid: 5a041ef761d380e;  filename: file.txt;
> branches:  1.1.2;
> created
> ----------------------------
> revision 1.1.2.1
> date: 2005/01/20 09:13:04;  author: lac;  state: Exp;  lines: +1 -0;
> kopt: kv;  commitid: 46441ef76203818;  mergepoint: 1.2;  filename:
> file.txt;
> merge-to-branch
>
========================================================================
> =====
> 
> Concurrent Versions System (CVSNT) 2.0.58d (client/server)
> 
> 
> Thanks,
> Lars
> _______________________________________________
> cvsnt mailing list
> cvsnt at cvsnt.org
> http://www.cvsnt.org/cgi-bin/mailman/listinfo/cvsnt
> 
> _____________________________________________________________________
> This email has been scanned by the MessageLabs Email Security System.

_____________________________________________________________________
This email message, including any attachments, may contain confidential and proprietary information for the sole use of the intended recipient.  If you are not the intended recipient, you are hereby notified that any use, copying or dissemination of this message is strictly prohibited.  If you received this message in error, please notify Brooks Automation, Inc. immediately by reply email or by calling Brooks US Headquarters at +1 978-262-2400. Then delete this message from your system, without making any copy or distribution.  Thank you.



More information about the cvsnt mailing list