2、输入rpm -ql subversion查看安装位置,如下图: 我们知道svn在bin目录下生成了几个二进制文件。 输入 svn --help可以查看svn的使用方法,如下图。
3、创建svn版本库目录 mkdir -p /var/svn/svnrepos
4、创建版本库 svnadmin create /var/svn/svnrepos 执行了这个命令之后会在/var/svn/svnrepos目录下生成如下这些文件
5、进入conf目录(该svn版本库配置文件) authz文件是权限控制文件 passwd是帐号密码文件 svnserve.conf SVN服务配置文件
6、设置帐号密码 vi passwd 在[users]块中添加用户和密码,格式:帐号=密码,如dan=dan
7、设置权限 vi authz 在末尾添加如下代码: [/] dan=rw w=r 意思是版本库的根目录dan对其有读写权限,w只有读权限。
8、修改svnserve.conf文件 vi svnserve.conf 打开下面的几个注释: anon-access = read #匿名用户可读 auth-access = write #授权用户可写 password-db = passwd #使用哪个文件作为账号文件 authz-db = authz #使用哪个文件作为权限文件 realm = /var/svn/svnrepos # 认证空间名,版本库所在目录
9、启动svn版本库 svnserve -d -r /var/svn/svnrepos
10、在windows上测试 新建一个测试文件夹,在该文件夹下右键选择 SVN checkout如下图(要事先安装TortoiseSVN): 填写SVN的地址,如下图: 输入密码,如下图:
svn 提示svn: Can't open file '/home/wwwroot/debao/data/filecache/.svn/lock': Permission denied
1.第一次在web服务器checkout的时候,其中debao为SVN仓称,我用的是root超级用户,因为是服务器管理员。
2.我同事svn up的时候会报下面的错误,提示没有权限打开该文件.svn/lock
[root@lamp hooks]# ssh -p 60022 www@192.168.1.170 /usr/local/bin/svn update /home/wwwroot/debao
www@192.168.1.170's password:
svn: Can't open file '/home/wwwroot/debao/data/filecache/.svn/lock': Permission denied
3.用ll查看当前文件夹下的.svn文件时发现其所属组所有者为root
[root@as4-dev wwwroot]# ll debao/.svn
total 28
-r--r--r-- 1 root root 143 Oct 28 12:27 all-wcprops
-r--r--r-- 1 root root 313 Oct 28 12:27 entries
-r--r--r-- 1 root root 2 Oct 28 12:25 format
drwxr-xr-x 2 root root 4096 Oct 28 12:25 prop-base
drwxr-xr-x 2 root root 4096 Oct 28 12:25 props
drwxr-xr-x 2 root root 4096 Oct 28 12:27 text-base
drwxr-xr-x 5 root root 4096 Oct 28 12:27 tmp
知道了问题的真正原因,就可以通过下面的方法解决Can't open file '.svn/lock': Permission denied的问题。
方法一:给目录加权限,www权限,这边www是组
chmod o+w .svn -R
su - www
svn up