14

I want to achieve a svn-root in /var/svn and repositories(projects) in there. I could get it to work in the browser (http://domain/url gives me "Collection of repositories") but the TortoiseClient is giving me the error mentioned in the title.

I set up a subversion on my ubuntu server by doing the following (shortened):

mkdir /var/svn
svnadmin create /var/svn/test

and my dav_svn.conf looks the following:

<Location /svn>
  DAV svn
  SVNParentPath /var/svn
  SVNListParentPath On
</Location>

I read about sym links possibly causing the problem, so I'll attach my 000-default site as well (it's the standard btw):

<VirtualHost *:80>
    ServerAdmin webmaster@localhost

    DocumentRoot /var/www
    <Directory />
            Options FollowSymLinks
            AllowOverride None
    </Directory>
    <Directory /var/www/>
            Options Indexes FollowSymLinks MultiViews
            AllowOverride None
            Order allow,deny
            allow from all
    </Directory>

    ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
    <Directory "/usr/lib/cgi-bin">
            AllowOverride None
            Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
            Order allow,deny
            Allow from all
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/error.log
    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    CustomLog ${APACHE_LOG_DIR}/access.log combined

Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
    Options Indexes MultiViews FollowSymLinks
    AllowOverride None
    Order deny,allow
    Deny from all
    Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>

I tried like suggested in How do I list all repositories with the SVNParentPath directive on Apache+SVN? but unfortunately I get another tortoise error then (while I can still see it fine in my browser) It then gives me "The OPTIONS request returned invalid XML in the response: XML parse error at line 1: no element found" (and HTTP OPTIONS to that url indeed gives no response body)

Does anyone know what is causing this problem?

Cheers!

Edit: This is the access.log output after trying to reach http://server/svn through tortoise

(with Location /svn) Notice the 301 .. TortoiseSVN changes the path to 'http://server/svn' without a leading slash, tho I specified to search within 'http://server/svn / '

[10/May/2012:00:42:29 +0200] "OPTIONS /svn HTTP/1.1" 301 573 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:42:29 +0200] "OPTIONS /svn HTTP/1.1" 301 573 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:42:29 +0200] "OPTIONS /svn HTTP/1.1" 301 573 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:42:29 +0200] "PROPFIND /svn HTTP/1.1" 301 516 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:42:29 +0200] "OPTIONS /svn HTTP/1.1" 301 573 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:42:29 +0200] "PROPFIND /svn HTTP/1.1" 301 516 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:42:30 +0200] "OPTIONS /svn HTTP/1.1" 301 573 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:42:30 +0200] "PROPFIND /svn HTTP/1.1" 301 516 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:42:30 +0200] "OPTIONS /svn HTTP/1.1" 301 573 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:42:30 +0200] "OPTIONS /svn HTTP/1.1" 301 573 "-" "SVN/1.7.4 neon/0.29.6"
[10/May/2012:00:42:30 +0200] "OPTIONS /svn HTTP/1.1" 301 573 "-" "SVN/1.7.4 neon/0.29.6"
[10/May/2012:00:42:30 +0200] "OPTIONS /svn HTTP/1.1" 301 573 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:42:30 +0200] "OPTIONS /svn HTTP/1.1" 301 573 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:42:30 +0200] "OPTIONS /svn HTTP/1.1" 301 573 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:42:30 +0200] "OPTIONS / HTTP/1.1" 200 236 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"

(with Location /svn/)

[10/May/2012:00:36:57 +0200] "OPTIONS /svn HTTP/1.1" 200 236 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:36:57 +0200] "OPTIONS /svn HTTP/1.1" 200 236 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:36:57 +0200] "OPTIONS /svn HTTP/1.1" 200 236 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:36:57 +0200] "OPTIONS /svn HTTP/1.1" 200 236 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:36:58 +0200] "OPTIONS /svn HTTP/1.1" 200 236 "-" "SVN/1.7.4 neon/0.29.6"
[10/May/2012:00:36:58 +0200] "OPTIONS /svn HTTP/1.1" 200 236 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:36:58 +0200] "OPTIONS /svn HTTP/1.1" 200 236 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:36:58 +0200] "OPTIONS / HTTP/1.1" 200 236 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
Community
  • 1
  • 1
Sebastian Saip
  • 452
  • 2
  • 5
  • 17
  • This may be a longshot, but by any chance do you have your TortoiseSVN going through a web proxy? I've seen requests between the TortoiseSVN repo browser and the repository bounce like this once before, and the web proxy was the source... – David W May 10 '12 at 00:59
  • No the tortoise does not use any proxy. Anyways, I made a single repo now and put everything in there - set SVNPath to that one repo and at least I have SVN now. – Sebastian Saip May 10 '12 at 14:21
  • Maybe is SElinux the problem. Look here at the green solution: http://serverfault.com/questions/114852/cannot-commit-to-svn-repository-via-http – cguenther Aug 14 '12 at 13:24

8 Answers8

12

I konw this is an old thread, however for the beneift of others that find it:

Just a guess, but does the url your browser give you have "viewvc" or some other part that is added in by the svn browser?

i.e. http://mysvn/viewvc/trunk/.....  

Tortoise won't check that out since it's not an actual svn url; your svn url is probably something like

http://mysvnsvr/mysvn/trunk.....
Jay
  • 121
  • 1
  • 2
  • Hey there, no that was not the case. My particular problem was - as Idalonzo said - that Tortoise doesn't support browsing of repos. – Sebastian Saip Mar 26 '13 at 17:52
  • Thank you Jay, I'm using SubversionEdge by CollabNet and this solved my problem. – lmingle Dec 04 '14 at 16:17
  • To see the actual repo url, open the [http://mysvn/viewvc/trunk/] in your browser and at the bottom of the page you will see the svn checkout url. – h3n Sep 23 '15 at 08:07
11

On CentOS7, I removed the Alias directive and it works.

rdconsolo
  • 111
  • 2
  • 3
7

The TortoiseSVN Repository Browser doesn't seem to support browsing of collection of repositories.

So if you have the repositories:

/var/svn/repo1
/var/svn/repo2
/var/svn/repo3

and the dav_svn.conf

<Location /svn>
  DAV svn
  SVNParentPath /var/svn
  SVNListParentPath on
</Location>

You can browse them with a web browser pointing at http://server/svn.

With TortoiseSVN you must specify also the name of the repository, e.g.

http://server/svn/repo1
http://server/svn/repo2
http://server/svn/repo3
Leonardo
  • 2,065
  • 2
  • 26
  • 27
6

Following @rdconsolo suggestion on Ubuntu 16.04, remove the Alias directive, works for me

#Alias /svn /var/lib/svn
<Location /svn>

DAV svn
SVNParentPath /var/lib/svn
SVNListParentPath On
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /etc/apache2/dav_svn.passwd
Require valid-user

</Location>
Vu Doan
  • 71
  • 1
  • 3
  • 2
    This work for me too. My environment SVN server on ubuntu 16.04 and client using tortoise on windows 7. I can do 'svn checkout' after remark that line. – Julius Prayogo Nov 10 '18 at 02:52
3

I encountered the problem in a standard configuration and the reason was that I used the same directory as DocumentRoot for the webserver and as SVNPath in the websvn/davsvn config.

For details see also What is the cause of "svn: E195019: Redirect cycle detected for URL"?

Community
  • 1
  • 1
Christian Fries
  • 16,175
  • 10
  • 56
  • 67
1

The problem for me was that I had a .htaccess RewriteRule in my document root, asking to add a trailing / to every URL not having one.

Because of that, the SVN clients, trying to call URLs WITHOUT a trailing / such as "https://site/repos/project" got reidrected by apache to "https://site/repos/project/", so the SVN client tries to go to "https://site/repos/project" again, and so on.

SOLUTION: Do not have any rule that add a trailing / that could affect your SVN urls.

Benjamin Piette
  • 3,645
  • 1
  • 27
  • 24
0

Adding the:

SVNListParentPath on

line alone solved this issue for me.

Stephen Rauch
  • 47,830
  • 31
  • 106
  • 135
-1

I had the same problem but not for multiple repositories just tags,branches,etc within a repository. Removing the Alias tag in the conf file fixed this. I am running Centos 7 with SVN 1.8 and Tortoise 1.9.