views:

75

answers:

2

Is there a program that does what git-svn does, but in a situation where the repository on the server is git, and the developer uses svn?

I know that github.com allows svn access to the git repositories they host, but it doesn't look like they've released this project open source (yet?), and using their servers is not an option for me (not even their private repositories).

EDIT: I think what I am looking for is a parallel to 'git-cvsserver' -- git-svnserver. In a bit of searching, I found some 2-3 year old threads on the git mailing list, but it doesn't look like anyone has made significant progress. I hope someone can correct me on that.

Are there any git-svnserver projects currently underway? I'd hate to have duplicate effort, but it seems that GitHub is the farthest along, but nobody else can have it.

A: 

I believe the git-svn link is meant to be driven by git (to monitor -- rebase or dcommit -- a SVN branch).
Meaning you could first clone whatever git repo you need on your local server (where you also use SVN), and use that for 'git-svn' commands between your local Git repo and your SVN workspace.

Once your local Git repo reflects adequately your SVN repo, you can push back to the remote Git server.

VonC
I'm not sure this does what I want. This is only for my coworkers that wouldn't want to switch to git, because all they do in svn now is checkout/update/commit anyways. If they ever did need to do more, someone could hold their hand through actually using git.
drhorrible
@drhorrible: it still could be a solution: a script like [git2svn](http://repo.or.cz/w/git2svn.git) (see also http://stackoverflow.com/questions/572893/cloning-a-non-standard-svn-repository-with-git-svn/572898#572898) could setup their SVN history for them, the git repo being there then to be able to get back their SVN work in the local Git repo before being pushed back for the other Git users.
VonC
+1  A: 

This is Python code to serve a git repository over svn protocol:

http://git.q42.co.uk/git_svn_server.git

mab