is a place holder for gathering information on the potential migration from SVN to GIT for the ScummVM source code repositories.
Please use this page to track any blockers that you may foresee (Windows users, I am looking at you ;-)) so the problems can be addressed and the work moved forward.
:Windows users may want to take a look at http://code.google.com/p/gitextensions/ and http://code.google.com/p/tortoisegit/ --[[User:Fingolfin|Fingolfin]] 12:47, 2 November 2010 (UTC)
==== Things to tweak in the repository conversion ====
:Author names/emails: see
this thread: http:// sourceforge. net/ mailarchive/message. php?msg_name=20100807142903. 71414e9c%40annie .
:Do we maybe want to use email@example.com as email address for some of the unknown authors rather than firstname.lastname@example.org? [[User:Wjp|Wjp]] 13:27, 2 November 2010 (UTC)
:Graft in FreeSCI history from vendor/, rewriting the commit messages
:Maybe: make merges of branches back into trunk actual merges [[User:Wjp|Wjp]] 22:35, 3 November 2010 (UTC)
:Are there other external histories we can and want to graft in? (Sarien?) [[User:Wjp|Wjp]] 13:09, 2 November 2010 (UTC)
mail at http:// sourceforge. net/ mailarchive/message. php?msg_name=AA4D038A-B948-43F0-87D7-22A2818BA3ED%40quendi. de:
:There was also some cleanup I performed after the CVS -> SVN switch, which in retrospect is not nice to have in the history. E.g. I cleaned up various branches, and many SVN properties. So commits like <http://scummvm.svn.sourceforge.net/viewvc/scummvm?view=revision&revision=20471> would be nice to suppress. Those SVN properties wouldn't be visible in git anyway, I guess.
::Many of those actually change things (like updating version numbers or removing files), so probably not all of them.
:Also, I think when we made the CVS conversion back then, something went slightly wrong with the very old history. Consider e.g. <http://scummvm.svn.sourceforge.net/viewvc/scummvm/scummvm/trunk/?pathrev=3486>, where the code that should be in trunk is hidden away in a subdirectory "scummvm-old" of trunk. Not terrible, but certainly annoying. Esp. since later on, at some point the two are mixed: Trunk is populated but "scummvm-old" is still there.This happened in revision 4785, see <http://scummvm.svn.sourceforge.net/viewvc/scummvm?view=revision&revision=4785>, and while it lists me as the committer with commit message "Initial revision", I am not quite sure why that is... probably because we switch to a new CVS repository back then, with a revised file structure... And things were never properly stitched together. The annoying part is that "scummvm-old" is still visible much, much later, see e.g. <http://scummvm.svn.sourceforge.net/viewvc/scummvm/scummvm/trunk/?pathrev=18000>. It was only removed in revision 20419, see <http://scummvm.svn.sourceforge.net/viewvc/scummvm?view=revision&revision=20419>, manually.
GIT_INDEX_FILE=$GIT_INDEX_FILE.new git update-index --index-info &&
test -f $GIT_INDEX_FILE.new && mv $GIT_INDEX_FILE.new $GIT_INDEX_FILE || true' HEAD
==== Where to host the GIT repository? ====
Some of our devs already use github for their own ScummVM trees, and since github makes it super-easy for anybody to branch from another user's tree, and then push changes back (resp. file a "pull request)", this seems ideal to me.
* The mercurial client, which is written in Python, can perhaps provide a better user experience for Windows, together with tortoise-hg. Relevant guides can be found here: