Code

cvsimport: add test illustrating a bug in cvsps
authorHeiko Voigt <git-list@hvoigt.net>
Wed, 18 Mar 2009 17:33:34 +0000 (18:33 +0100)
committerJunio C Hamano <gitster@pobox.com>
Sat, 21 Mar 2009 06:39:17 +0000 (23:39 -0700)
commit9291ccfd27e1e1958b50df7f408996ac22c0776a
tree4be699570e96f8901dec4af05c4d5ea54b83d89f
parent0dc062122ee114db087c10007fd374f26725dae7
cvsimport: add test illustrating a bug in cvsps

Some cvs repositories may have time deviations in their recorded commits.
This is a test for one of such cases. These kind of repositories can happen
if the system time of cvs clients is not fully synchronised.

Consider the following sequence of events:

 * client A commits file a r1.1
 * client A commits file a r1.2, b r1.1
 * client B commits file b r1.2 using the same timestamp as a r1.1

This can be resolved but due to cvsps ordering its patchsets solely based
on the timestamp. It only takes revision odering into account if there
is no difference in the timestamp.

I hit this bug when importing from a real repository which was originally
converted from another rcs based scm. Other import tools can handle this
correctly, e.g. parsecvs.

Signed-off-by: Heiko Voigt <hvoigt@hvoigt.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/t9603-cvsimport-patchsets.sh [new file with mode: 0755]
t/t9603/cvsroot/CVSROOT/.gitignore [new file with mode: 0644]
t/t9603/cvsroot/module/a,v [new file with mode: 0644]
t/t9603/cvsroot/module/b,v [new file with mode: 0644]