Re: Git / Subversion Interoperability

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 23 Mar 2007, Bruno Cesar Ribas wrote:

On Fri, Mar 23, 2007 at 11:34:26AM +0100, Karl Hasselström wrote:
On 2007-03-23 01:36:11 +0000, Julian Phillips wrote:

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.

Maybe the pragmatic solution would be to have built-in handling of a
few properties such as svn:executable and svn:ignore that have git
equivalents, and just emulate all other properties with files.

My idea is to write the git-svnserver!!! I think it will be easier.

Almost certainly - I don't think anyone was proposing otherwise? The repo access library I was referring to is one of the libraries used by the client - specifically the one used to talk to a remote server (I think it may be called ra or something? I'm not familiar with Subversion internals).


To begin coding, i plan to write basic functions [updade,commit,checkout,
copy,merge,...] then start to implement most "complex" instructions.

Ok, but ...

I don't think that merge is a basic function in Subversion. I believe that it is all client side using diffs provided by the server into the working copy, certainly it is up to the user to commit the result. Unfortunately that would make it necesary to do some very nasty work server side to try and autodetect merges - git-svnimport (and git-svn?) already does this sort of thing. There are noises about this changing at some point though ...


As spearce said before, the idea of this is to migrate from svn to git
without many trouble in transition, so basic can work as the initial thought.

Which means that you have to at the very least support the basic operations of the Subversion supplied svn client. And my point was that I wouldn't be surprised if this meant dealing with properties, since subversion uses properties to expose things like the log message, commit date and author for revisions and other misc. info for files. You may not even be able to get commit/checkout working without _some_ property support.

Having said that, I don't think it would be a _bad_ thing if this work went far enough that one could replace a Subversion server without any users even noticing ;)

--
Julian

 ---
You know you're using the computer too much when:
a party sucks if theres no computers to use.
	-- electrofreak

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]