2

一些细节(也许对某些人有用):

板载:mac mini + 山狮 + Server.app。

问题:我确实可以通过浏览器访问我的 subversion 存储库,但无法通过命令行访问它以进行结帐(例如)。

我已经完成了

  1. 从 Mac OS Lion获取 mod_dav_svn.so和mod_authz_svn.so并将其放入/usr/libexec/apache2

  2. 接下来,在/Library/Server/Web/Config/apache2/webapps中创建com.site.svn.plist

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    
    <dict> 
      <key>name</key>
      <string>com.site.svn</string>
      <key>includeFiles</key>
      <array>
          <string>/private/etc/apache2/svn_configs/svn_config.conf</string>
      </array>
        <key>requiredModuleNames</key>
      <array>
          <string>dav_svn_module</string>
          <string>authz_svn_module</string>
      </array>
      <key>sslPolicy</key>
      <integer>1</integer>
      </dict>
    </plist>
    
  3. 我已将mod_dav_svn.somod_authz_svn.so的LoadModule(s) 添加到/Library/Server/Web/Config/apache2/httpd_server_app.conf中:

    LoadModule dav_svn_module libexec/apache2/mod_dav_svn.so
    LoadModule authz_svn_module libexec/apache2/mod_authz_svn.so
    
  4. 我创建了**/private/etc/apache2/svn_configs/svn_config.conf**:

    <Location /svn/repo1>
    
            DAV svn
            AuthName "Subversion auth"
            SVNPath /Users/someUser/Repositories/Repo1Repo
    
            <Limit GET HEAD OPTIONS CONNECT POST PROPFIND PUT DELETE PROPPATCH MKCOL COPY MOVE LOCK UNLOCK>
                    Require group repo1users
            </Limit>
    
            AuthType Basic
            Require group repo1users
    
    </Location>
    
  5. 我已经从终端执行:

webappctl 启动 com.site.svn

之后我可以通过https://site/svn/repo1

但是当我试图颠覆结帐系统时,系统给了我:

>>>svn co https://site/svn/repo1
Authentication realm: <https://site:443> UserWebDAV Gateway
Password for 'someUser': 
svn: access to 'https://site/svn/repo1' forbidden

你知道我为什么会遇到这种情况吗?

PS 权利

/Users/someuser/Repositories
/Users/someuser/Repositories/Repo1Repo
/Users/someuser/Repositories/Repo1Repo/*

777所有者/组- _www:_www

我已经习惯了-我阅读了http://www.themacosxserveradmin.com/2011/01/lion-server-and-svn.html并尝试将其集成到山狮中。

谢谢你的想法。

4

1 回答 1

2

花了几天时间处理同样的问题。虽然我的配置不完全相同,但应该足够接近以帮助您完成您正在尝试做的事情。能够将身份验证问题与为 Wiki 启用 WebDAV(在服务器应用程序中)相关联。如果您禁用 WebDAV 支持,那么一切都会开始工作。就我而言,我选择在自定义端口(8080 或 8443)上简单地在 Apache 中创建额外的侦听器,并将所有与 SVN 相关的配置指令放在那里,因此所有内容都本地化在一个地方。

祝你好运!

于 2012-08-22T17:29:26.210 回答