.
* 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
