Code

[PATCH] git cvsimport sanity checking
authorTommy M. McGuire <mcguire@crsr.net>
Fri, 10 Jun 2005 06:27:47 +0000 (01:27 -0500)
committerLinus Torvalds <torvalds@ppc970.osdl.org>
Mon, 13 Jun 2005 03:48:18 +0000 (20:48 -0700)
This patch adds some sanity checking to git-cvsimport-script,
specifically forcing the use of cvsps -x (to get the latest information
from the repository, rather than whatever is in the cache) and aborting
early if cvsps does not produce any output.

I debated removing the $MODULE directory following an abort, but I
eventually decided leaving stuff behind would make debugging easier.  On
the other hand, this patch should help with the "cvsimport left me with
an empty repository" complaints.

Call cvsps with the -x flag, to get the current state of the repository,
and abort the cvs import early if cvsps does not produce any output.

Signed-off-by: Tommy McGuire <mcguire@crsr.net>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
git-cvsimport-script

index 936ed8837eb5f645d1c35b23bb1550a09ed2c293..6cd21fae1d3a0ef3b277ecc3c3ca6e602d6c488c 100755 (executable)
@@ -20,6 +20,8 @@ cvsps -h 2>&1 | grep -q "cvsps version 2.1" >& /dev/null || {
 mkdir "$MODULE" || exit 1
 cd "$MODULE"
 
-TZ=UTC cvsps -A $MODULE | git-cvs2git $ARGS --cvsroot="$CVSROOT" --module="$MODULE" > .git-create-script || exit 1
+TZ=UTC cvsps -x -A $MODULE > .git-cvsps-result
+[ -s .git-cvsps-result ] || exit 1
+git-cvs2git $ARGS --cvsroot="$CVSROOT" --module="$MODULE" < .git-cvsps-result > .git-create-script || exit 1
 sh .git-create-script