Re: Git / Subversion Interoperability
- From
Julian Phillips <julian@quantumfyre.co.uk>
- Date
- Mar 23, 2007, 01:36 UTC
- Message-ID
- <Pine.LNX.4.64.0703230128330.4001@beast.quantumfyre.co.uk>
- In-Reply-To
- <20070323012422.GC17773@spearce.org>
On Thu, 22 Mar 2007, Shawn O. Pearce wrote:
Show 8 quoted lines
> Julian Phillips <julian@quantumfyre.co.uk> wrote: >> That would probably be good enough for the majority of >> one-project-per-repo Subversion projects at least. Though there is still >> the issue that Subversion will actually let you create a "tag" simply by >> committing whatever you currently have in your working copy (including >> localally modified files ... yeuch). > > Heh. People do weird things. ;-)
Well, I don't think there would be too many complaints if a git-based Subversion server didn't support such methods of creating tags ... ;)
Show 13 quoted lines
> >>> That's all I can think of right now. But I'm sure there are more. >> >> Properties are probably the next biggest headache. Subversion allows you >> to associate arbitrary keyword value pairs with files (which are >> versioned) and with revisions (which are not versioned). You would need >> to find someway to support this in git. Since revision properties are >> disabled by default in Subversion you may be able to simply disallow them >> permanently - but I don't know anything about the Subversion protocol ... > > I thought about the properties, but didn't bother to write anything > on that subject as we may just be able to say "look, properties > are not supported in git-svnserver, so don't try to use them".
Indeed. That's what I was aiming at with the the last sentence (not very clearly unfortunately). It would be nice if the server could tell the client that properties are not supported ... but I doubt that it can, since they are fundamental part of Subversion.
In particular it's how the client finds out about things like symlinks and line ending conversion. It may be necessary to provide some basic support for some of the properties in the svn:... namespace in order for the Subversion repo access library not to refuse to talk to the git server.
> > The git-svnserver is meant to help users migrate to Git, not to offer > up all of SVNs features and warts. A big part of this project may > just be deciding what features we are willing to try to emulate.
Indeed. It sounds like an interesting idea. Anything that increases the possibilty of my convincing the appropriate people to migrate my work project ... ;)
-- Julian --- "From there to here, from here to there, funny things are everywhere." -- Dr. Seuss