[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 936ed88..6cd21fa 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