* Alvaro Herrera <alvherre@commandprompt.com> [090529 11:45]:
> Aidan Van Dyk wrote:
>
> > Yes, but the point is you want an exact replica of CVS right? You're
> > git repo should have $PostgreSQL$ and the cvs export/checkout (you do
> > use -kk right) should also have $PostgreSQL$.
> >
> > The 3 parsecvs errors were that it *didn't* recognoze the strange
> > $PostgreSQL ... Exp $ expansion that cvs did.
>
> Huh, no -- I agree that $OpenBSD$ etc should remain (we don't munge them
> anyway), but $PostgreSQL$, $Id$, $Revision$ etc tags are best gone
> because, as Markus says, their expansion interferes with content hashing.
I *think* you're actually agreeing with me. *Hiding* the diffs that
include munching of keywords is not what we want. We want the
conversion to *not* munge "keyword-like" things (No, $OpenBSD$ is *not*
a keyword in the PostgreSQL CVS repository. But $PostgreSQL$ *is*.
So we want the conversion to be identical to: cvs export -kk -r $tag
That will have *keywords* be unexpanded; namely these specific
ones:AuthorDateHeaderIdLockerLogNameRCSfileRevisionSourceStatePostgreSQL
but *not* "keyword-like" entries, like:$ NetBSD ... Exp $$ FreeBSD ... Exp $$ OpenBSD ... Exp $$ KAME ... Exp $
which are *not* CVS keywords in the PostgreSQL repository.
i.e. Just like I said, "identical to cvs checkout/export -kk.
Now, and intersting question, do you want the "perfect" conversion to
contain *other* keyword un-expansion possiblities that would have happened
on any commits on Nov 29/30 2003 when CVSROOT/options contained:+tagexpand=iPostgreSQL
If you had checked out something on that day, even with a -kk, $Log$
would have been expanded, because for that day, $Log$ was *not* an
eligable keyword on the PostgreSQL CVS repository.
Whooee... Fun with CVS history....
a.
--
Aidan Van Dyk Create like a god,
aidan@highrise.ca command like a king,
http://www.highrise.ca/ work like a slave.