[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Problems accessing GitHub's SVN-bridge with SVN 1.11

From: Branko Čibej <brane_at_apache.org>
Date: Sun, 4 Nov 2018 17:41:48 +0100

On 04.11.2018 16:05, Thorsten Schöning wrote:
> Hi all,
>
> GitHub documents to support Subversion clients and I'm using that for
> many projects to include them in one of my working copies using
> svn:externals. Since upgrading TortoiseSVN from 1.10 to 1.11 I get the
> following error for all of those projects:
>
>> The server at '[...]' does not support the HTTP/DAV protocol.
> This happens to a long list of projects, some examples:
>
>> https://github.com/apache/commons-lang.git/tags/LANG_3_6
>> https://github.com/pgjdbc/pgjdbc.git/tags/REL42.2.2
>> https://github.com/ams-tschoening/kaitai_struct_tests.git/branches/libs_java_3rd_usage

The first two URLs return a 404. The third returns 410 and says "feature
gone" ... I think you'll need better examples.

> I've asked about that problem on SO[1], which revealed that the switch
> from 1.10 to 1.11 really is the problem. Downgrading resolves the
> problem.
>
> Do you have any idea what could be the root cause? Is there something
> that needs to be configured specially?

The root cause is that GitHub does not implement Subversion's HTTP/DAV
protocol correctly.

In 1.11, the Subversion client has become stricter about the server
requirements (see: https://svn.apache.org/r1825302). Specifically, we
require that the server sends DAV response headers to the OPTIONS
request, which we use for capability negotiation. Here's an example of a
correct response:

HTTP/1.1 200 OK
Date: Sun, 04 Nov 2018 15:40:24 GMT
Server: Apache/2.4.7 (Ubuntu)
DAV: 1,2
DAV: version-control,checkout,working-resource
DAV: merge,baseline,activity,version-controlled-collection
DAV: http://subversion.tigris.org/xmlns/dav/svn/depth
...

The GitHub server does not return any DAV: header for the OPTIONS
request, so the response is considered incorrect. I suggest sending a
bug report to GitHub; the attached script can be used to simulate
Subversion's OPTIONS request.

In the meantime, staying with 1.10.x appears to be the only option if
you have to use GitHub's SVN protocol.

-- Brane

Received on 2018-11-04 17:41:58 CET

This is an archived mail posted to the Subversion Users mailing list.