Subject: cvs: phantom revisions with bogus date on branch on file resurection
Date: Thu, 1 Jun 2006 23:47:13 +0200
Package: cvs
Version: 1:1.12.13-2
Severity: important
Tags: upstream
First observed with & 1.12.12 on gentoo on a live repo, reproduced on
sid with the below script. It does not exist in current etch
(1.12.9-17).
As you see, a phantom commit is added prior to the resurecting commit
on the branch, and it has the same timestamp as the its dead base
revision on the trunk.
In the logs I had from real repositories with 1.12.12, the "lines"
attribute for the phantom revision was a mirror of the revision
following it, reflecting no reality at all (would have been "+0 -1"
here). There is no mention of such a bugfix in the cvs NEWS file, but
who knows.
I found no mention of such a feature in the 1.12.9-13 entries in the
CVS NEWS file, so I doubt that is an intended behaviour.
The bogus date confuses tools trying to make sense out of cvs log data
(cvsps, namely). At least this date issue must be solved upstream
asap, as it will cause problems for users trying to migrate their
repositories to another SCM.
==== script
#!/bin/sh
set -e
# setup repo and working area
cvs -d $PWD/root init
mkdir root/test
cvs -d $PWD/root co test
cd test
# trunk
touch file1 file2
cvs add file1 file2
cvs ci -m "add files"
sleep 2
rm file1
cvs rm file1
cvs ci -m "rm file1"
sleep 2
cvs tag A
# branch based on trunk
cvs tag -b A_HEAD
cvs up -r A_HEAD -P
echo "stuff and more stuff" >file1
cvs add file1
cvs ci -m "work"
sleep 2
cvsps --norc -x -A
==== cvs log file1
----------------------------
revision 1.2
date: 2006-06-01 23:12:21 +0200; author: dwitch; state: dead; lines: +0 -0; commitid: GyCIctKzKqKVwlzr;
branches: 1.2.2;
rm file1
----------------------------
revision 1.1
date: 2006-06-01 23:12:17 +0200; author: dwitch; state: Exp; commitid: j1zLyPu2Bw6Uwlzr;
add files
----------------------------
revision 1.2.2.2
date: 2006-06-01 23:12:23 +0200; author: dwitch; state: Exp; lines: +1 -0; commitid: D3Fd6f9Wz8cWwlzr;
work
----------------------------
revision 1.2.2.1
date: 2006-06-01 23:12:21 +0200; author: dwitch; state: dead; lines: +0 -0; commitid: D3Fd6f9Wz8cWwlzr;
file file1 was added on branch A_HEAD on 2006-06-01 21:12:23 +0000
====
--
Yann Dirson <[email protected]> |
Debian-related: <[email protected]> | Support Debian GNU/Linux:
| Freedom, Power, Stability, Gratis
http://ydirson.free.fr/ | Check <http://www.debian.org/>
Acknowledgement sent
to Thorsten Glaser <[email protected]>:
Extra info received and forwarded to list. Copy sent to Steve McIntyre <[email protected]>.
(Fri, 06 May 2011 21:45:03 GMT) (full text, mbox, link).
Debbugs is free software and licensed under the terms of the GNU General
Public License version 2. The current version can be obtained
from https://bugs.debian.org/debbugs-source/.