tags:

views:

780

answers:

4

Is there a way to "git svn dcommit" from a cloned git-svn repository :

I have several branches in my svn, sometimes it is very small branch and it is nice to have it in the same directory, but sometimes these branches grow big and it is nice to move the whole thing to another folder.

But when I do a git clone from this local repository to another place on my disk git-svn lost all its information and I don't known how to connect it back. I suppose I could just make a copy of the folder, but doing it through git would be nicer.

+3  A: 

Unfortunately not, as git-clone does not clone the git-svn information when performing a clone. You can read more about the situation here.

mipadi
A: 

The svn info is not much more than a few bits of info in the .git/config file, right? You could just hand-jam those and be good to go.

davetron5000
+8  A: 

Once you've cloned a git-svn repo, you can pull in the information you need by running git svn init with the same parameters as the original repo was created with. According to the WebKit git-svn instructions, the trick is to use update-ref to get yourself to a state where you can fast-forward to the tip of the SVN tree:

git update-ref refs/remotes/trunk origin/master
git svn init -T trunk http://svn.webkit.org/repository/webkit

The exact parameters passed to git svn init depend on the setup of your Subversion repo and git-svn clone.

Brian Campbell
Shouldn't `git svn init` go *before* `git update-ref`?
J.F. Sebastian
A: 

It is possible, but you have to set things up a bit differently. Here is how we do it on numpy - the repo was created with git-svn-automirror

You can look at the function _git_update_mirror to see how to do it manually

David Cournapeau