underscore in Subversion branch name
From: Korzynski, Aleksander <hidden>
Date: 2016-06-15 22:50:51
Dear Git Support, I'm cloning a Subversion repository to Git. A bug in Git is triggered by an underscore in the name of one of the Subversion branches. I use the following command (note: some names are changed): $ git svn clone https://AAA.FFF.com/svnroot/BBB -s The process dies with the following error (names changed):
Found possible branch point: https://AAA.FFF.com/svnroot/BBB/trunk/CCC => https://AAA.FFF.com/svnroot/BBB/branches/DD_EEEEEEE, 100 fatal: Not a valid object name refs/remotes/DD EEEEEEE cat-file commit refs/remotes/DD EEEEEEE: command returned error: 128
Note that in the top line, the name of the branch contains an underscore: "DD_EEEEEE". However, in the middle line, the branch name contains a space: "DD EEEEEE". Apparently, Git at some point translates the underscore in the name of the Subversion branch into a space. I've had a look at the source code and the process dies inside resolve_local_globs() in the git-svn script. A command at the beginning of that subroutine is: command(qw#for-each-ref --format=%(refname) refs/#) When I run the following by hand: $ git for-each-ref --format='%(refname)' refs one of the output lines is: refs/remotes/DD%20EEEEEEE So it has a sanitised space (%20) at that point already, instead of an underscore. Git version: 1.7.1 Best regards, Aleksander Korzynski