git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [SoC RFC] libsvn-fs-git: A git backend for the subversion filesystem

From
Julian Phillips <julian@quantumfyre.co.uk>
Date
Mar 20, 2008, 09:22 UTC
Message-ID
<Pine.LNX.4.64.0803200910410.21580@reaper.quantumfyre.co.uk>
In-Reply-To
<20080320045632.GB8410@spearce.org>
On Thu, 20 Mar 2008, Shawn O. Pearce wrote:
Show 11 quoted lines
> Bryan Donlan <bdonlan@gmail.com> wrote:
>> I'm planning to apply for the git summer of code project. My proposal
>> is based on the project idea of a subversion gateway for git,
>> implemented with a new subversion filesystem layer. A draft of my
>> proposal follows; I'd appreciate any comments/questions on it before
>> the application period proper begins.
>
> Very cool.  Have you had a chance to look at the prototype python
> implementation of an SVN server that Julian Phillips started?
>
>  http://git.q42.co.uk/w/git_svn_server.git
(now with partial support for 'svn log' ... ;))
Show 12 quoted lines
>> /props/{trunk/,branches/,tags/} - file properties; props on directories will be
>>   represented with a reserved filename (._GIT-SVN-DIRPROPS perhaps)
>>   copyfrom information might be in /props, or in a seperate tree
>
> How critical are file properties to an SVN client for proper
> functioning?  Given the challenges already in front of you for this
> project I would almost encourage you to avoid dealing with file
> level properties.  Its hard enough to make something that speaks SVN
> on the wire but reads/writes Git on disk, not to mention you have
> to somehow "flatten" the Git DAG down into a sequential revision
> namespace to make the SVN clients happy.  So deferring property
> support until later may be wise.

You might need to get svn:eol-style working to prevent the svn client from munging any binary files? Can't think of any other vital properties atm.

Show 5 quoted lines
>> /revprops/NNN - revision properties for the given revision number
>
> Ditto.  Aside from the special merge properties you mentioned,
> I wonder if you can simply avoid implementing support for these
> early on.

Since you have to explicitly enable revprop editing in the subversion repository by enabling a hook script, I should think that this was definately something that could be left at the bottom of the TODO list ...

Though you do need to be able to convert commit info into the appropriate revprops (e.g. commit msg -> svn:log revprop)

-- 
Julian

  ---
Often statistics are used as a drunken man uses lampposts -- for support
rather than illumination.
Previous: Harvey HarrisonNext: Jakub Narebski
Message 5 of 11 in “[SoC RFC] libsvn-fs-git: A git backend for the subversion filesystem”
  1. Bryan DonlanMar 19, 2008
  2. Sam VilainMar 20, 2008
  3. Shawn O. PearceMar 20, 2008
  4. Harvey HarrisonMar 20, 2008
  5. Julian PhillipsMar 20, 2008
  6. Jakub NarebskiMar 20, 2008
  7. Bryan DonlanMar 22, 2008
  8. thread-safe libgit.a as a GSoC project, was Re: [SoC RFC] libsvn-fs-git: A git backend for the subversion filesystemJohannes Schindelin, Mar 22, 2008
  9. Govind SalinasMar 23, 2008
  10. Johannes SchindelinMar 23, 2008
  11. Bryan DonlanMar 24, 2008

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.