ubuntu 14.04 安装subversion-1.8.10(SVN)

来源:互联网 发布:免费不充值约爱软件 编辑:程序博客网 时间:2024/06/05 02:02

1.准备安装文件

linux下安装svn,以下是我安装所需要的所有安装包

2.安装apr和apr-util


#tar  -zxvf apr-1.5.1.tar.gz#./configure --prefix=/usr/local/apr# make&&make install#tar -zxvf apr-util-1.5.4.tar.gz#./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config# make&&make  install

3.安装Pcre Apache

#tar -zxf pcre-8.36.zip   #./configure --prefix=/usr/local/pcre   #tar -zxf httpd-2.4.7.tar.gz# make&&make install#tar zxvf http httpd-2.4.10.tar.gz#./configure --prefix=/usr/local/apache --enable-so --enable-dav --enable-dav-fs --enable-ssl --enable-maintainer-mode --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre   # make&&make install

提示:如果出现

configure: error: We require OpenSSL; try --with-openssl

解决方法:

下载opensslhttp://www.openssl.org/source/openssl-1.0.1j.tar.gz

#tar -zxvf openssl- openssl-1.0.1j.tar.gz

#cd openssl- openssl-1.0.1j

#./config -fPIC --prefix=/usr/local/openssl/ enable-shared

#make&&make install

这个时候apache的配置命令要加上 --with-openssl=/usr/local/openssl


注:如果缺失--enable-dav,启动apache时会报“httpd: Syntax error on line xxx of /usr/local/apache/conf/httpd.conf: Cannot load /usr/local/apache2/modules/mod_dav_svn.so into server: /usr/local/apache2/modules/mod_dav_svn.so: undefined symbol: dav_register_provider”需要重新编译安装才能解决

4.安装Sqlite 

#tar zxf sqlite-autoconf-3080301.tar.gz#./configure --prefix=/usr/local/subversion --with-apxs=/usr/local/apache/bin/apxs --with-apr=/usr/local/apr/  --with-apr-util=/usr/local/apr-util/ --with-openssl --with-zlib  --enable-maintainer-mode# make&&make install 

提示:configure配置SVN时可能提示如下错误信息:

configure: error: subversion requires zlib

错误提示需要安装zlib

下载zlbhttp://zlib.net/

#tar -xvzf zlib-1.2.8.tar.gz

#cd zlib-1.2.8

#./configure

#make&&make install

5.安装Subversion

#tar zxf subversion-1.8.<span style="font-family:宋体;">10</span>.tar.gz  #./configure --prefix=/usr/local/subversion --with-apxs=/usr/local/apache/bin/apxs --with-apr=/usr/local/apr/ --with-apr-util=/usr/local/apr-util/ --with-openssl=/usr/local/openssl --with-zlib=/usr/local/zlib --with-sqlite=/usr/local/sqlite --enable-maintainer-mode# make&&make instal



提示:在以上编译过程中可能会出现 configure: error: Subversion requires SQLite

可以wget http://www.sqlite.org/sqlite-amalgamation-3071501.zip 

安装Sqlite

unzip sqlite-amalgamation-3071501.zip 

进入文件夹sqlite-amalgamation找到sqlite3.c

将其复制到 sqlite-autoconf-3080301 /sqlite3.c  

    重新执行上面的./configure makemake install


6.查看apache和苏北version是否安装成功

查看apache是否安装成功

启动apache/usr/local/apache/bin/apachectl start

在浏览器输入http://serverIP,显示it works就说明apache安装成功


查看subversion是否安装成功

/usr/local/subversion/bin/svnserve --version
出现subversion的版本号,就表面安装成功


7.配置subversion通过apache访问

7.1配置subversion

#vi /usr/local/apache/conf/httpd.conf

查看httpd.conf文件里面是否有

LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so

没有的话,就在里面加上

拷贝相关库  #cp /usr/local/subversion/libexec/mod_authz_svn.so  /usr/local/apache/modules/ #cp /usr/local/subversion/libexec/mod_dav_svn.so  /usr/local/apache/modules/ 

注:这个很重要,不然subversion不能通过apache访问的。

7.2添加svn的验证文件svn-auth.conf  

#/usr/local/apache/bin/htpasswd -cm  /usr/local/subversion/svn/auth.conf getprod   #New password:   #Re-type new password:   #Adding password for user getprod    

注:getprod就是用户名,只有第一次需要加-c参数,后期再添加用戶千万不能加-c,否则会将原文件覆盖,如下:

#/usr/local/apache/bin/htpasswd -m /subversion/svn/auth.conf getprodone#New password:   #Re-type new password:   #Adding password for user getprodone      

7.3  配置svn权限控制文件/usr/local/subversion/svn/svn-access.conf

[groups]   

rd = user1,user2 #passwd文件中存在的用户,rd代表用户组,在组上赋权限 

[/]    #svnrepo的根目录赋权,但随svn启动命令不同,写的不同  

@rd = rw    #rd组赋读写权限  

注:如果少了字符如[group],则用浏览器登录时,只能看到“Collection of Repositories

SVN权限控制请参考:http://blog.csdn.net/kobi521/article/details/8732049

7.4配置apache

打开apache配置文件

#vi /usr/local/apache/conf/httpd.conf
在最后面追加

<Location /svn>DAV svnSVNParentPath /mnt/svn/repository(此处配置你的版本库根目录)AuthType Basic(连接类型设置 基本验证)AuthName "Hello welcome to here"(此处字符串内容修改为提示对话框标题)AuthUserFile /mnt/svn/repository/auth.conf(此处修改为访问版本库用户的文件,用apache的htpasswd命令生成)AuthzSVNAccessFile /mnt/svn/repository/svn-access.conf(此处修改为访问版本库权限的文件)Require valid-user("Requirevalid-user"告诉apache在authfile中所有的用户都可以访问。如果没有它,则只能第一个用户可以访问新建库)</location>

修改apache的ip和端口

apche的默认端口是80,修改方法是打开apache配置文件

#vi /usr/local/apache/conf/httpd.conf
在里面搜索 80,将Listen 80 中的80改为你想要的端口


如果电脑有多个网卡,可以设置apache使用哪个网卡的ip,修改方法是打开apache配置文件

#vi /usr/local/apache/conf/httpd.conf
在里面搜索ServerName,在#ServerName www.example.com:80的下面追加一行

ServerName 192.168.1.1

最后保存httpd.conf文件


7.5    新建第一个SVN库

添加文件加:mkdir  -p  /data/svn/repo

#chmod 777 -R  /data/svn/repo  (给svn库赋予权限,否则svn提交的是否会提示:Permission denied)

# svnadmin create /data/svn/repo   


7.6启动和关闭Subversion和Apache

启动Subversion:/usr/local/subversion/bin/svnserve -d -r /mnt/svn/repository

启动Apache:/usr/local/apache/bin/apachectl start

关闭Subversion: killallsvnserve

关闭Apache:/usr/local/apache/bin/apachectl stop


提示: 如果报“httpd: Syntax error on line xxx of /usr/local/apache/conf/httpd.conf: Cannot load /usr/local/apache2/modules/mod_dav_svn.so into server: /usr/local/apache2/modules/mod_dav_svn.so: undefined symbol: dav_register_provider

可打开httpd.conf

vi /usr/local/apache/conf/httpd.conf

#LoadModule dav_module modules/mod_dav.so前面的#去掉即可


在浏览器地址栏中输入http//svnserverIP:svnserverPort/svn


参考网址:

http://blog.sina.com.cn/s/blog_6870d1e00100jbox.html

http://blog.csdn.net/kobi521/article/details/8732049


0 0
原创粉丝点击