[sakai-core-team] Work on migrating to github

Matthew Buckett matthew.buckett at it.ox.ac.uk
Thu Dec 18 06:08:47 PST 2014


Initial I started with the git repositories we used at oxford to make
our local build. In this setup each top level folder is a seprate git
repository. I wrote some scripts that would merge these repositories
together and re-write the paths. There are some problems with this
approach:
- If misses some history. There has been a reasonable amount of
re-organisation of the Sakai SVN repositories and files have moved
between top level folders. Using the multiple git repositories as a
starting point means that moves between folders are lost.
- Big ugly merged. I have only been successful in merging the multiple
repositories into one by creating a merge commit for each one. This
results in a root like structure for all the previous history. I have
attempted to replay history into one continuous branch but I couldn't
get it to work.
You can see an old copy of this approach on github[1].

To attempt to get around these problems I looked at reposurgeon[2],
this first attempts to mirror the Sakai repository locally using
svnsync, however this would eventually get to a revision (~60000) and
fail complaining that the repository wasn't good. I wasn't able to
work around this so I got a full SVN dump through Neal and used this
dump with reposurgeon, however I then started getting problems with
reposurgeon processing the dump which looked to be bugs in
reposurgeon.

I also attempted to get a complete mirror of of /svn into git
(starting with a single repository) and this completed in a few days.
I then attempted to first drop all the empty commits and this took
days (using git-filter-branch).

Recently I've had lots of local work which has meant that I haven't
been able to look at this for a while.

[1] - https://github.com/sakaiproject/test-svn-convert
[2] - http://www.catb.org/esr/reposurgeon/

-- 
  Matthew Buckett, VLE Developer, IT Services, University of Oxford


More information about the sakai-core-team mailing list