linux 下svn服务器安装

安装步骤如下:
1、yum install subversion

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
时间: 2024-10-02 23:39:08

linux 下svn服务器安装的相关文章

linux下svn服务器安装配置与启动

1. 采用源文件编译安装.源文件共两个,为:      subversion-1.6.1.tar.gz  (subversion 源文件)       subversion-deps-1.6.1.tar.gz  (subversion依赖文件)       注意文件版本必须一致,否则很容易产生各种奇怪的问题. 2. 上传以上两个文件到服务器上,解压.解压命令为:        tar xfvz subversion-1.6.1.tar.gz        tar xfvz subversion-

linux下svn提交忽略某些文件、目录(ignore属性

 svn也是一个目录同步了我们可以用它来做版本控制了,下面一起来看看关于linux下svn提交忽略某些文件.目录(ignore属性),希望例子对各位有帮助.     在项目中,有些文件是不需要将本地的提交到svn仓库,例如config.php文件,特别是定义了绝对路径的,或者是缓存目录.图片目录等,所以为了方便,在每次提交svn的时候,都需要忽略这些文件.目录,避免不慎提交引起团队中其他成员需要修改其本地的版本. linux下用svn propedit svn:ignore命令可以编辑忽略文件.

linux下svn常用指令

一下内容转载于:http://blog.chinaunix.net/space.php?uid=22976768&do=blog&id=1640924.这个总结的很好~ windows下的TortoiseSVN是资源管理器的一个插件,以覆盖图标表示文件状态,几乎所以命令都有图形界面支持,比较好用,这里就不多说.主要说说linux下svn的使用,因为linux下大部分的操作都是通过命令行来进行,所以必须得掌握linux下svn的常用指令.当然linux下也有模仿TortoiseSVN的lin

Linux下SVN服务器自动更新文件到Web目录的方法_Linux

说明: 服务器操作系统:CentOS 服务器IP:192.168.21.134 SVN安装路径:/usr/local/svn SVN项目路径:/home/svn SVN登录账号:osyunwei SVN登录密码:123456 Web站点根目录:/home/web实现目的: 当svn项目中有任何修改更新时,系统会自动实时从svn中检出文件并同步到Web站点根目录 具体操作: 一.使用SVN中post-commit实现自动实时从svn中检出文件并同步到Web站点根目录 cd /home/svn/ho

Linux下SVN服务器同时支持Apache的http和svnserve独立服务器两种模式且使用相同的访问权限账号_Linux

说明: 服务器操作系统:CentOS 6.x 服务器IP:192.168.21.134 实现目的: 1.在服务器上安装配置SVN服务: 2.配置SVN服务同时支持Apache的http和svnserve独立服务器两种模式访问: 3.Apache的http和svnserve独立服务器两种模式使用相同的访问权限账号. 具体操作: 一.关闭SELINUX vi /etc/selinux/config #SELINUX=enforcing #注释掉 #SELINUXTYPE=targeted #注释掉

Linux下svn常用指令【转】

转自:http://blog.csdn.net/myarrow/article/details/8110858 Windows下的TortoiseSVN是资源管理器的一个插件,以覆盖图标表示文件状态,几乎所以命令都有图形界面支持,比较好用,这里就不多说.主要说说linux下svn的使用,因为linux下大部分的操作都是通过命令行来进行,所以必须得掌握linux下svn的常用指令.当然linux下也有模仿TortoiseSVN的linux X程序,例如RabbitVCS,模仿程度很高,但很容易拖慢

ubuntu下SVN服务器安装配置 下的svn 常用命令

ubuntu下SVN服务器安装配置 一.SVN安装1.安装包$ sudo apt-get install subversion 2.添加svn管理用户及subversion组$ sudo adduser svnuser$ sudo addgroup subversion$ sudo addgroup svnuser subversion   3.创建项目目录$ sudo mkdir /home/svn$ cd /home/svn$ sudo mkdir fitness$ sudo chown -

linux下SVN中改变执行权限

SVN中,如果我们在linux下提交权限为755的文件,就会在svn的属性中存在一个svn:excuteable. 只在本地chmod 644 filename.php,是不能造成修改的. 可以在windows下的svn客户端中,通过修改该文件的属性,Remove掉它的这个可执行属性. Remove之后会重新进行一次commit操作,所以还会弹出让你填写一点备注的输入框. 所以可以看出,svn中保存文件并没有储存属主和类似755这样的权限,只在如果有可执行权限时,checkout和update时

linux下svn提交忽略某些文件、目录(ignore属性)

在项目中,有些文件是不需要将本地的提交到svn仓库,例如config.php文件,特别是定义了绝对路径的,或者是缓存目录.图片目录等,所以为了方便,在每次提交svn的时候,都需要忽略这些文件.目录,避免不慎提交引起团队中其他成员需要修改其本地的版本. linux下用svn propedit svn:ignore命令可以编辑忽略文件.目录列表,在仓库中执行,假如我的仓库是wudiweb.com: cd /data/www/www.111cn.net  # svn副本 export SVN_EDIT