From: Timothy Schaeffer Date: Fri, 24 Jul 2009 14:45:06 GMT Subject: git-svn error: RA layer request failed: PROPFIND request failed on '/svn/stf/branches/dev/sw%2Fdpemu%2Finclude%2FNetCnxn.h': Message-ID: <138905EB75AB0D44B6A0ECD251A92EA7011BA99E@sdra00198.intranet.dra-inc.net> Git-svn has been giving me the following error for some time when calling "git svn dcommit": RA layer request failed: PROPFIND request failed on '/svn/stf/branches/dev/sw%2Fdpemu%2Finclude%2FNetCnxn.h': PROPFIND of '/svn/stf/branches/dev/sw%2Fdpemu%2Finclude%2FNetCnxn.h': 302 Found (https://oursvnrepo.net) at /usr/local/libexec/git-core/git-svn line 508 This only occurred when git detected a rename or copy. Following the lead into git-svn.perl, and noticing that some of the '/'s in the path were hex-encoded and some were not, I changed the regex used to find chars to hex-encode in the relative part of the path to exclude '/'. It works, so far. I have included a patch. Tim S. diff --git a/git-svn.perl b/git-svn.perl index 43c86e8..864b752 100755 --- a/git-svn.perl +++ b/git-svn.perl @@ -3953,7 +3953,7 @@ sub repo_path { sub url_path { my ($self, $path) = @_; if ($self->{url} =~ m#^https?://#) { - $path =~ s/([^~a-zA-Z0-9_.-])/uc sprintf("%%%02x",ord($1))/eg; + $path =~ s/([^~a-zA-Z0-9_.-\/])/uc sprintf("%%%02x",ord($1))/eg; } $self->{url} . '/' . $self->repo_path($path); }