Subject: [GSoC update] git-remote-svn: Week 9

From: Ramkumar Ramachandra <[email-masked]>
Date: Thu, 1 Jul 2010 15:13:10 +0200

Hi,

In terms of code, this week was unproductive. However, there was one
very long and productive discussion about the design of svn-fe. We can
now prove that the design of svn-fe is most efficient, and that any
other dumpfile importer will do worse than svn-fe. I'll put this proof
down in another email, and use this one for just a status update. We
have also determined that some some extensions to git-fast-import will
significantly reduce the complexity of svn-fe. Here are the current
list of tasks along with their status:

1. The svnclient_ra. I have stopped working on a stopgap
   implementation of svnclient_ra that dumps full text/ props; to do
   this, it needs to interrupt a replay and open a new connection- it
   seems that this is quite non-trivial to get right. I've decided to
   complete the delta dump generator instead. Unfortunately, this
   means that I won't have a complete chain to show a remote helper by
   mid-term evaluations: just individual components.
2. Ternary treap fork. This only changes the underlying data
   structure- nothing else should change. David is close to completing
   this.
3. Make svn-fe support deltified dumps. This can only be done after we
   have a Git object store backing. Deferred for the moment.
4. git-fast-import only supports filecopy for trees from the parent
   commit; make it support copies from all commits. Jonathan has
   already sent an RFC patch on the list for this.
5. Zero-tree fork. svn-fe currently maintains trees for all revisions;
   Jonathan suggested that it can lazily fetch tree objects from the
   Git store backing. This change will significantly reduce the
   complexity of svn-fe.
6. git-fast-import needs to be extended to print-marks. Sverre
   suggested this, and Jonathan has sent an RFC patch on the
   list. This is required for the Git object store to communicate back
   commit hashes to the caller (svn-fe in this case).

In other news, we managed to get colabti.org to log the channel where
we have most of our discussions: #git-devel on Freenode IRC. This
information is probably helpful for other GSoC students and developers
who are looking to collaborate on projects.

-- Ram