这里针对的是安装了svn插件的Eclipse
svn仓库的conf文件夹下的svnserve.conf文件可以进行权限修改:(‘#’代表注释)
#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 directory containing ### this configuration file. ### If SASL is enabled (see below), this file will NOT be used. ### 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 ### directory containing this file. The specified path may be a ### repository relative URL (^/) or an absolute file:// URL to a text ### file in a Subversion repository. 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 #该文件可以添加组和读写权限
password-db = passwd 这个文件保存用户名和密码信息。
authz-db = authz 这个文件保存授权信息
添加用户密码可以进passwd文件,比如粉红色是添加的部分:
[users]
# harry = harryssecret
# sally = sallyssecret
tom =123456
jerry=123456
ceshi=123456
authz文件添加用户组和读写权限:
[groups]
# harry_and_sally = harry,sally
# harry_sally_and_joe = harry,sally,&joe
kaifa = tom,jerry
# [/foo/bar]
# harry = rw
# &joe = r
# * =
[/]
@kaifa = rw
ceshi = r
* =
其中,@kaifa表示这个组的tom与jerry都有读写权限,ceshi用户只有读权限,* =表示其他用户无权限。[/]表示根目录。在groups中定义了开发的2个人员tom和jerry。
相对于svn服务器来说,checkout、更新(uadate)是读(read)操作,提交(commit)是写(write操作)。
所以更新(从服务器读取)操作时,测试和开发组都可以用,都有读权限;提交(写入服务器)操作时,只有开发组能用,测试没有写权限。
比如用测试去提交,就会发生错误,因为测速没写权限:
使用记住密码后再进行提交操作,成功后文件的后面会显示用户名,如jerry。这样就能知道是那个程序员写了该程序,到时出了bug就可以找这个程序员了。要写好注释,免得后面的人骂你。