Re: git: uh-oh
Max Bowsher <maxb@f2s.com>
From: Max Bowsher <maxb@f2s.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Robert Haas <robertmhaas@gmail.com>, Magnus Hagander <magnus@hagander.net>, Michael Haggerty <mhagger@alum.mit.edu>, pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2010-08-20T17:36:59Z
Lists: pgsql-hackers
On 20/08/10 18:28, Tom Lane wrote: > Max Bowsher <maxb@f2s.com> writes: >> The history that cvs2svn is aiming to represent here is this: > >> 1) At the time of creation of the REL8_4_STABLE branch, plperl_opmask.pl >> did *not* exist. > >> 2) Later, it was added to trunk. > >> 3) Then, someone retroactively added the branch tag to the file, marking >> it as included in the REL8_4_STABLE branch. [This corresponds to the git >> changeset that Robert is questioning] > > Uh, no. We have never "retroactively added" anything to any branch. > I don't know enough about the innards of CVS to know what its internal > representation of this sort of thing is, but all that actually happened > here was a "cvs add" and a "cvs commit" in REL8_4_STABLE long after the > branch occurred. We would like the git history to look like that too. When I try reproducing these circumstances locally, that is executing a "cvs add" and a "cvs commit" of a file on a branch where that file already exists on trunk, CVS writes an internal representation different to what I see in your repository for this file. I'm at a loss to explain how your repository came to be this way, but I can tell you that cvs2git is faithfully rendering what your repository says into git. Max.