我以前在我的计算机上有一个供本地使用的存储库并将其删除。
现在我正在努力设置另一个。但即使输入正确的密码,仍然会收到“授权失败”,当我输入错误的密码时,它会告诉我。这正是我第一次设置它,但现在每次都失败了。我究竟做错了什么?它是我计算机上唯一的存储库。我已经尝试重新安装subversion并删除AppData文件夹中的缓存,但没有任何帮助。
我正在使用本指南进行设置。 https://blog.codinghorror.com/setting-up-subversion-on-windows/
这就是我正在做的事情
C:\>svnadmin create "H:\SVN\Repository"
C:\>sc create svnserver binpath= "C:\Program Files (x86)\Subversion\svnserve.exe
--service -r H:\SVN\Repository" displayname= "SubVersion" depend= Tcpip start=
auto
[SC] CreateService SUCCESS
C:\>set SVN_EDITOR=c:\windows\system32\notepad.exe
C:\>net start svnserver
The SubVersion service is starting.
The SubVersion service was started successfully.
C:\>svn mkdir svn://localhost/myProject
Log message unchanged or not specified
(a)bort, (c)ontinue, (e)dit:
c
Authentication realm: <svn://localhost:3690> myProject
c
Password for 'Admin':
Authentication realm: <svn://localhost:3690> myProject
c
Username: user
Password for 'user': ********
svn: Authorization failed
C:\>
我的svnserve.conf文件
[general]
anon-access = read
auth-access = write
password-db = passwd
authz-db = authz
realm = myProject
我的passwd文件
[users]
user = password
答案 0 :(得分:16)
错误消息显示“授权失败”,而不是“身份验证失败”。这意味着您已成功通过身份验证(即您的用户名和密码没问题),但您认证的用户无权执行该命令(即,您无权创建该目录)。
这意味着您没有连接到正确的svnserve实例(您说您已经有一个设置,这是您尝试设置的第二个),或者svnservice没有使用正确的svnserve.conf文件,或'authz'文件不正确(可能指定svnserve.conf文件中auth文件的完整路径)。
答案 1 :(得分:6)
在Fedora 17上使用svnserve进行SVN配置 SVN服务器配置
以root用户身份登录
svnadmin create Repository
这将创建Repository dir
ll Repository/
total 24
drwxr-xr-x. 2 root root 4096 Aug 1 16:32 conf
drwxr-sr-x. 6 root root 4096 Aug 1 15:07 db
-r--r--r--. 1 root root 2 Aug 1 14:34 format
drwxr-xr-x. 2 root root 4096 Aug 1 14:34 hooks
drwxr-xr-x. 2 root root 4096 Aug 1 14:34 locks
-rw-r--r--. 1 root root 229 Aug 1 14:34 README.txt
cd Repository
编辑存储库/ conf / passwd文件
vi Repository / conf / passwd
添加以下行:
[users]
user1 = user1
左侧的作业是用户名&amp;右边是密码
编辑存储库/ conf / authz文件
vi Repository / conf / authz
添加以下行:
[/]
User1 = rw
它会给用户1读取&amp;写权限。
编辑Repository / conf / svnserve.conf文件
vi Repository / conf / svnserve.conf
添加以下行:
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
检查svnserve守护程序的状态
/etc/init.d/svnserve status
如果它处于非活动状态,请使用:
/etc/init.d/svnserve start
再次检查状态,如果它正在运行,它将显示
/etc/init.d/svnserve status
svnserve.service - LSB: start and stop the svnserve daemon
Loaded: loaded (/etc/rc.d/init.d/svnserve)
Active: active (running) since Thu, 01 Aug 2013 12:14:27 +0530; 2h 19min ago
Process: 1655 ExecStart=/etc/rc.d/init.d/svnserve start (code=exited,
状态= 0 / SUCCESS)
Main PID: 1658 (svnserve)
CGroup: name=systemd:/system/svnserve.service
â 1658 /usr/bin/svnserve --daemon --pid-file=/var/run/svnserve.pid
现在,您的SVN服务器已准备就绪。
客户端配置
SVN结帐 以普通用户身份登录
svn co svn://203/124/15.24/root/Repository/
这将创建Repository dir&amp; sub_dirs。
您已准备好使用SVN。
答案 2 :(得分:2)
尝试svn mkdir svn://localhost/myProject -m "some message" --username user --password password
,看看是否有所作为。
答案 3 :(得分:1)
我想在SVN的版本1.6.x 中添加,我必须在 authz 文件中更改内容。
在我以前这样之前:
[repository:/path/to/repo]
@authors = rw
@readers = r
但是现在一些的原因不起作用。当我将其更改为此时,我获得了身份验证:
[/]
@authors = rw
@readers = r