SVN1.6安装

 公司刚刚把SVN从windows迁移到了linux,以下是安装笔记,大部分来自网上,自己有点小的修改,腆着脸标个原创吧,感谢开源,感谢分享。

到下列地址下载相关rpm包,更新相关文件(rpm -Uvh

http://the.earth.li/pub/subversion/summersoft.fay.ar.us/pub/subversion/latest/1.6.13

主要下载以下几个安装包,以subversion1.6.1为例:

   apr-0.9.12-2.i386.rpm

   apr-util-0.9.12-1.i386.rpm

   neon-0.28.4-1.i386.rpm

   subversion-1.6.1-1.i386.rpm

   sqlite-3.5.9-4.1.i386.rpm

安装这些包之前,检查一下这些安装包是否已经存在和它的版本。

例:

#rpm –q apr

若检查出包已存在且版本低于当前下载的版本,安装是要采用rpm –Uvh来升级一下。

安装这些包。

#rpm –ivh apr-0.9.12-2.i386.rpm或(rpm –Uvh apr-0.9.12-2.i386.rpm

#rpm –ivh apr-util-0.9.12-1.i386.rpm(rpm –Uvh apr-util-0.9.12-1.i386.rpm)

#rpm –ivh neon-0.28.4-1.i386.rpm或(rpm –Uvh neon-0.28.4-1.i386.rpm

#rpm –ivh sqlite-3.5.9-4.1.i386.rpm

#rpm –ivh subversion-1.6.1-1.i386.rpm

 

6、配置subversion

创建资料库

svnadmin  create /srv/mysvn

现在就可以使用svn://192.168.1.100/srv/mysvn svn+ssh://192.168.1.100/srv/mysvn来使用svn

通过svn+ssh://登录svn使用的是ssh的用户名和密码

 

7、与apache结合

安装完上面的rpm包后在apachemodule目录中可以找到两个模块mod_dav_svn.somod_authz_svn.so

apachehttpd.conf中配置:

LoadModule dav_svn_module     modules/mod_dav_svn.so

LoadModule authz_svn_module   modules/mod_authz_svn.so

httpd.conf最后加上如下内容

<Location /svn>

DAV svn

SVNPath /srv/mysvn #版本库的目录

AuthType Basic

AuthName "Subversion repository" #欢迎语言

AuthUserFile /srv/passwd.con #密码文件

Require valid-user

</Location>

注意:

1        SVNPath一定要跟./svnadmin create /srv/mysvn的目录一样,要不晕死你

2        目录svnroot的权限设置成755

 

8、通过htpasswd创建密码(使用http登录时提示输入用户名密码)

htpasswd –c /srv/passwd.conf apache  创建一个密码文件

 

使用apache登录时,使用的是通过htpasswd创建的用户名、密码

vim /srv/mysvn/conf可以看到如下内容:

apache:Fn7WlDWaDmhxA #密码经过了加密

 

通过htpasswd  /srv/passwd.con 用户名      增加或修改用户的密码

 

htpasswd -D /srv/passwd.con 用户名        删除用户

 

问题:

1设立好了apachesubversion,但是只能读取/var/www/下的版本库,无法提交。对于其他路径的版本库就无法读取。

 

权限问题。

#chown -R apache.apache /srv/mysvn

#chmod -R 755 /srv/mysvn

 

2、为什么我通过svn://方式无法登录了

svnserve -d -r)启动服务器

 

3、提交时提示:Can't open file '/srv/mysvn/db/txn-current-lock': Permission denied

如果是通过http的方式来访问svn服务,那么chown -R apache apache chomd -R 755 /srv/mysvn

 

4、如何创建一个新的项目

1)linux下新建一个目录:例如:project

 

2)创建资料库

svnadmin  create /srv/project

 

3)chown -R apache:apache project

    chmod -R 755 project

 

4)apache的配置文件中加入:

<Location /project>

DAV svn

SVNPath /srv/project

AuthType Basic

AuthName "Subversion repository"

AuthUserFile /srv/passwd.conf #密码配置文件使用一个

Require valid-user

</Location>

重启apache

 

5)如果出现

svn: Could not open the requested SVN filesystem

检查apache中的配置文件是否全部写对

你可能感兴趣的:(SVN,职场,休闲)