.
* Peter Eisentraut <[EMAIL PROTECTED]> [080401 12:01]: > I have now managed to investigate why some conversions of the PostgreSQL CVS > repository to other formats are having trouble or are failing. Here, I am > looking at git-cvsimport in particular. > > The problem appears to be that several tags around the time of PostgreSQL 7.1 > are broken or inconsistent. For instance, here is a piece of output of > cvsps: > > WARNING: Invalid PatchSet 9441, Tag REL7_1: > src/pl/plpgsql/src/mklang.sql.in:1.6=after, > src/pl/plpgsql/src/INSTALL:1.2=before. Treated as 'before' I talked about this here: http://mid.gmane.org/[EMAIL PROTECTED] Here's a "quick hack" to cvsps that I use to ignore the problematic tags. Of course, I've stuck with fromcvs for my PostgreSQL git mirror simply because even though I *can* use cvsps on PostgreSQL with that hack, it's still loads slower than fromcvs. Since cvsps/cvsimport is so slow, I didn't pursue making this patch usable, and moving forward with using cvsps/cvsimport. [EMAIL PROTECTED]:~/build/cvsps.git$ git diff diff --git a/cvsps.c b/cvsps.c index 981cd78..d436591 100644 --- a/cvsps.c +++ b/cvsps.c @@ -2184,15 +2184,28 @@ static void parse_sym(CvsFile * file, char * sym) } } +const char* skip_symbols[] = +{ + "REL7_1_BETA", + "REL7_1_BETA2", + "REL7_1_BETA3", + NULL +}; + void cvs_file_add_symbol(CvsFile * file, const char * rev_str, const char * p_tag_str) { CvsFileRevision * rev; GlobalSymbol * sym; Tag * tag; + int i; /* get a permanent storage string */ char * tag_str = get_string(p_tag_str); + for (i = 0; skip_symbols[i] != NULL; i++) + if (strcmp(tag_str, skip_symbols[i]) == 0) + return; + debug(DEBUG_STATUS, "adding symbol to file: %s %s->%s", file->filename, tag_str, rev_str); rev = cvs_file_add_revision(file, rev_str); put_hash_object_ex(file->symbols, tag_str, rev, HT_NO_KEYCOPY, NULL, NULL); a. -- Aidan Van Dyk Create like a god, [EMAIL PROTECTED] command like a king, http://www.highrise.ca/ work like a slave.
signature.asc
Description: Digital signature