[Scummvm-devel] Subversion is here!

Pawel Kolodziejski pablo at omega.xtr.net.pl
Sat Jan 14 11:58:14 CET 2006

> "Pawel Kolodziejski" <pablo at omega.xtr.net.pl> writes:
>>> 3) Regarding "merging" the history of files that we manually
>>> "renamed" in CVS (like scummvm.cpp -> scumm.cpp; or the whole scummvm-
>>> old -> scummvm transition): Anybody besides Eugene and me got an
>>> opinion on this? Just to repeat it: Mine is that it would be very
>>> nice to have, but that I personally so rarely need it that (again,
>>> for me personally) it's of a very low priority and should only be
>>> done if it's possible with reasonable effort.
>> I'm not sure how such merge trees would looks like. That was
>> reorganisation  of tree, how files from diffrent places are linked ?
>> Does
>> that mean it could be like current scumm/scumm.cpp to scummvm.cpp from
>> old
>> tree ?
> Well, what happened when scummvm.cpp was renamed to scumm.cpp was that
> the file scummvm.cpp was removed (= moved to Attic) and a new file
> called scumm.cpp was created.  This is because CVS does not support
> renames.  So the file scummvm.cpp and scumm.cpp are not linked in any
> way in CVS; to see the changelog before the name change you have to
> "cvs log scummvm.cpp", and to see changes after the name change you
> have to "cvs log scumm.cpp".

I was mean link between current scumm.cpp file and from
scummvm-old/scummvm.cpp, not simply rename in the same directory.

> In subversion, it is possible for a version controlled entity to
> change its name.  So if we had been using subversion as the time when
> the file was renamed, we could have used "svn mv scummvm.cpp
> scumm.cpp", and the file known as scumm.cpp in later revisions would
> actually be the same entry as the one known as scummvm.cpp in previous
> revisions.  So with an up to date working copy, "svn log scumm.cpp"
> would show you not only the changes after the name change, but also
> those before the name change, as well as the actual name change
> itself.  Diffs between a version before the name change and a version
> after the name change would also work.
> Unfortunately, the cvs2svn conversion script will not know that the
> removal of scummvm.cpp and the addition of scumm.cpp to the CVS
> repository was intended as a rename, and so it will create two
> separate nodes, just like it was in CVS.  Meaning that log and diff on
> this file will work no better than they did in CVS.
> It _is_ possible to fix, because what the cvs2svn tool actually
> generates is a dump file that could be edited by hand before imported
> into subversion (at least it did when I used it the last time).  Thus,
> the link between the names can be established by someone who knows
> exactly what he is doing.  It's not to be attempted by the faint of
> heart though.
>   // Marcus

More information about the Scummvm-devel mailing list