git svn - Unrecognized URL scheme error

git, git-svn, svn

Solution

Apparently you have two different versions of Subversion binaries and one of those versions does not support `http(s)://` protocol.

If you run `svn --version` the output should include something like this:

* ra_neon : Module for accessing a repository via WebDAV protocol using Neon.
  - handles 'http' scheme
  - handles 'https' scheme

or

* ra_serf : Module for accessing a repository via WebDAV protocol using serf.
  - handles 'http' scheme
  - handles 'https' scheme

The problem is that `git-svn` does not use the same binaries. Instead it uses another version of SVN that compiled with no support for http(s):// protocol. There may be different reasons for that:

If `svn --version -q` prints `1.7.x`, most probably your Git installation is too old to use this version of SVN. So, you might want to upgrade it as latest versions of `git-svn` support SVN 1.7.

If your default SVN installation has no Perl binding installed, SVN::Core uses the binaries with no http(s) support as a fallback. So, you might want to enable Perl bindings for SVN.

Finally, due to some misconfiguration of Perl modules, PATH/LD_LIBRARY_PATH or PERL5LIB (or whatever `git-svn` uses to find the libraries — I'm no expert here), `git-svn` just uses invalid binaries.

The particular steps on fixing the issue depend on how you manage the packages, e.g. with Homebrew that'd look like this:

$ brew remove svn
$ brew install --with-perl svn

or

$ brew remove git
$ brew install git

Or with MacPorts something like this:

$ port install subversion-perlbindings

or

$ port upgrade git-core +svn

After that try to specify a proper library path. E.g. if `which svn` prints `/usr/local/bin/svn`, try to use `/usr/local/lib` as a library path for Perl modules.

Hope that helps.

Problem

I'm getting the following error on attempt to clone svn rep with git svn: ``` eugene$ git svn clone https://my.site/svn/ here Initialized empty Git repository in /Users/eugene/Documents/workspace/test/here/.git/ Bad URL passed to RA layer: Unrecognized URL scheme for 'https://my.site/svn' at /usr/local/git/lib/perl5/site_perl/Git/SVN.pm line 148. ``` `svn checkout https://my.site/svn/` works just fine. I've re-run ``` cpan SVN::Core ``` and install finished fine, but still getting the error.

Original source

Related problems