0215 svn commit failed svnserve.conf

奇怪的问题
SVN1.3 +TSVN 1.30 本来好好的
今天升级了一下 TSVN1.31
结果本机的不能用了,可以增加,但是提交失败 没有详细信息
然而访问远端的却仍然OK
无论怎么卸载 重装 还是不行

有人提示:
重启机器,清空TSVN的密码缓存,禁用repository配置文件(svnserve.conf)的authz-db命令,再看看。

看了半天,COMMIT FAILED ,然而 DETAIL MORE又没有
跑到DOS下试验
svn: 提交失败(细节见下):
svn: 无法使用外部编辑器取得日志信息;请尝试设定 $SVN_EDITOR 环境变数,或是使用 -
-message (-m) 或 –file (-F) 选项
svn: 没有一个 SVN_EDITOR,VISUAL 或 EDITOR 环境变数被设定,执行时期的设定中也没
有 \’editor-cmd\’ 选项

然后加上-message 看到
svn: 提交失败(细节见下):
svn: 授权失败

看到这个 svnserve.conf – snvserve 的仓库配置文件
每个代码仓库都有一个 svnserve.conf 文件来控制 svnserve 守护进程的行为。这个文件位于仓库的 conf 子目录。
文件的结构与 Subversion 用户配置文件的结构类似。顶层是段落 (section),以方括号中的词指定;每个段落之中是 “variable=value\’\’ 形式的变量定义。以 `#\’ 开头的行被忽略。svnserve.conf 当前只使用一个段落,称为 “general\’\',并且支持如下变量:

anon-access = none&line;read&line;write
决定非授权用户的访问级别。write 访问允许所有的仓库操作。read 访问允许所有操作,除了提交和修改版本属性。none 不允许任何访问。默认级别是 read。

auth-access = none&line;read&line;write
决定授权用户的访问级别,使用与上面相同的访问级别。默认级别是 write。

password-db = filename
设置密码数据库的位置。filename 可能是相对仓库中 conf 目录的位置。没有默认值。密码数据库的格式与本文件相似。它只有一个段落 “users\’\';段落中的每个变量是一个用户名,每个值是一个密码。

realm = realm-name
设置仓库的授权域 (realm)。如果两个仓库拥有相同的密码数据库,它们应当在同一个域中,反之亦然;这样的关联可以允许客户端为多个仓库使用单一的密码缓存。默认域的值是仓库的路径,相对于服务器进程的虚根目录。

然后想起以前我都是用的 FILE:///,然而最近试验 SVN://,不知道是不是这个原因,打开 svnserve.conf
看到:### This file controls the configuration of the svnserve daemon, if you
### use it to allow access to this repository.  (If you only allow
### access through http: and/or file: URLs, then this file is
### irrelevant.)
看意思好像是说 HTTP 和 FILE 方式不需要这个文件,那么SVN方式就是需要了
修改
[general]
### These options control access to the repository for unauthenticated
### and authenticated users.  Valid values are "write", "read",
### and "none".  The sample settings below are the defaults.
anon-access = write

OK。
[general]
### These options control access to the repository for unauthenticated
### and authenticated users.  Valid values are "write", "read",
### and "none".  The sample settings below are the defaults.
anon-access = write
auth-access = write
### The password-db option controls the location of the password
### database file.  Unless you specify a path starting with a /,
### the file\’s location is relative to the conf directory.
### Uncomment the line below to use the default password file.
# password-db = passwd
### The authz-db option controls the location of the authorization
### rules for path-based access control.  Unless you specify a path
### starting with a /, the file\’s location is relative to the conf
### directory.  If you don\’t specify an authz-db, no path-based access
### control is done.
### Uncomment the line below to use the default authorization file.
# authz-db = authz
### This option specifies the authentication realm of the repository.
### If two repositories have the same authentication realm, they should
### have the same password database, and vice versa.  The default realm
### is repository\’s uuid.
# realm = My First Repository

然而那个DB.LOCK很奇怪
This file is not used by Subversion 1.3.x or later.
However, its existence is required for compatibility with
Subversion 1.2.x or earlier.

历史博文

标签:, , , , ,
五月 14, 2006 at 8:41 下午 by yippee 1,054 次
Category: Dev
Tags: , , , , ,