LINUX下SVN安装

合集下载

linux下搭建SVN手册

linux下搭建SVN手册

linux下搭建SVN服务器完全手册ubuntu14.0 + ssh + yum一,安装必须的软件包.yum install subversion (SVN服务器)mysql-server (用于codestriker)httpd mod_dav_svn mod_perl (用于支持WEB方式管理SVN服务器)sendmail (用于配置用户提交代码后发邮件提醒)wget gcc-c++ make unzip perl* (必备软件包)ntsysv vim-enhanced (可选)二,基本的SVN服务器配置1,新建一个目录用于存储SVN所有文件# mkdir /home/svn2,新建一个版本仓库# svnadmin create /home/svn/project3,初始化版本仓库中的目录# mkdir project project/serverproject/client project/test (建立临时目录)# svn import project/file:///home/svn/project -m "初始化SVN目录"# rm -rf project (删除临时建立的目录)4,添加用户要添加SVN用户非常简单,只需在/home/svn/project/conf/passwd文件添加一个形如“username=password"的条目就可以了.为了测试,我添加了如下内容:[users]# harry = harryssecret# sally = sallyssecretpm = pm_pwserver_group = server_pwclient_group = client_pwtest_group = test_pw5,修改用户访问策略/home/svn/project/conf/authz记录用户的访问策略,以下是参考:[groups]project_p = pmproject_s =server_groupproject_c =client_groupproject_t = test_group[project:/]@project_p = rw* =[project:/server]@project_p = rw@project_s = rw* =[project:/client]@project_p = rw@project_c = rw* =[project:/doc]@project_p = rw@project_s = rw@project_c = rw@project_t = rw* =以上信息表示,只有pm有根目录的读写权,server_group能访问server目录,client_group能访问client目录,所有人都可以访问doc目录.6,修改svnserve.conf文件,让用户和策略配置升效.svnserve.conf内容如下:[general]anon-access = noneauth-access = writepassword-db =/home/svn/project/conf/passwdauthz-db =/home/svn/project/conf/authz7,启动服务器# svnserve -d -r /home/svn8,测试服务器# svn co svn://192.168.60.10/projectAuthentication realm:<svn://192.168.60.10:3690> 92731041-2dae-4c23-97fd-9e1ed7f0d18dPassword for 'root':Authentication realm:<svn://192.168.60.10:3690> 92731041-2dae-4c23-97fd-9e1ed7f0d18dUsername: server_groupPassword for 'server_group':svn: Authorization failed ( server_group 没用根目录的访问权 )# svn co svn://192.168.60.10/projectAuthentication realm:<svn://192.168.60.10:3690> 92731041-2dae-4c23-97fd-9e1ed7f0d18dPassword for 'root':Authentication realm:<svn://192.168.60.10:3690> 92731041-2dae-4c23-97fd-9e1ed7f0d18dUsername: pmPassword for 'pm':A project/testA project/serverA project/clientChecked out revision 1. ( 测试提取成功 )# cd project/server# vim main.c# svn add main.c# svn commit main.c -m "测试一下我的C 程序,看什么看,不行啊??"Adding main.cTransmitting file data .Committed revision 2. ( 测试提交成功 )三,配置SVN服务器的HTTP支持1,转换SVN服务器的密码由于SVN服务器的密码是明文的,HTTP服务器不与支持,所以需要转换成HTTP支持的格式。

【svn-Linux】Linux下SVN的全部使用说明

【svn-Linux】Linux下SVN的全部使用说明

【svn-Linux】Linux下SVN的全部使⽤说明%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%SVN http://202.231.××.×:×××/svn/03-Design/.....%××××××××××××××××××××××××××××××× 配置 ××××××××××××××××××××××××××××××××××××%1.安装svn sudo apt-get update # sudo apt-get install subversion 可以验证⼀下,通过如下命令: svn help //--svn帮助 svn --version //--svn版本 svnserve --version //--svn server版本%××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××%2.卸载svn利⽤以下命令查看⾃⼰的系统是否已经安装了svn: svn如果显⽰⼀下信息说明已安装,可以使⽤以下命令进⾏卸载: sudo apt-get remove --purge subversion (–purge 选项表⽰彻底删除改软件和相关⽂件)%××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××%3.创建SVN版本库创建项⽬⽬录和svn仓库: sudo mkdir /home/svn sudo mkdir /home/svn/repository sudo chmod -R 777 /home/svn/repository sudo svnadmin create /home/svn/repository # cd /home/svn/repository/ # ls执⾏命令后,会在repository下⽣成以下⽂件 conf db format hooks locks README.txt我们主要关⼼的是conf和db⽂件,conf⽂件夹下是存放主配置⽂件和⽤户、权限位置,db⽂件夹是存放svn转储后的数据。

Svn Linux安装方法

Svn Linux安装方法

Svn 安装方法1.创建 svn linux 用户:a)使用root 用户登录后,创建svn 组 gsvn, 创建用户 svn .b)创建组命令: groupadd gsvnc)创建用户命令: useradd –s svn -p svn -r svn –g gsvnd)修改密码: passwd svn2.安装java 运行环境 : jdk1.6a)Jdk linux 安装文件jdk-6u23-linux-x64.binb)安装jdk命令: ./jdk-6u23-linux-x64.binc)配置环境变量:在 /ect/profile 文件中添加如下变量:export JAVA_HOME=/svnserver/jdk1.6.0_23export JRE_HOME=/svnserver/jdk1.6.0_23/jreexport CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/libexport PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH3.安装svn 服务器: CollabNetSubversionEdge-1.3.1_linux-x86_64.tar.gza)安装文件CollabNetSubversionEdge-1.3.1_linux-x86_64.tar.gz.b)安装命令:tar -zxfCollabNetSubversionEdge-1.1.0_linux-x86.tar.gz 4.启动svn 服务器:o Svn 解压后会生成一个csvn 文件夹 ,移动到csvn 文件夹下: cd csvno启动命令: bin/csvn start5.管理台a)安装完成后页面,登录用户名/密码: admin/adminb)启动完成后登录管理台进行服务器设置:http://localhost:3343/csvn/ c)设置svn 端口号:。

Linux下多项目SVN配置方法

Linux下多项目SVN配置方法

1. 安装SVN服务器软件2. 在home下创建svn根目录mkdir /home/svnroot3. 在/home/svnroot下创建Project1 , Project 2, Project3 三个项目文件夹,这三个文件夹要存放不同项目的SVN版本库。

4. 同样在/home/svnroot中创建CodeAuth 文件夹,该文件夹将保存passwd 和authz文件,在第6步中实现。

5. 创建项目cd /home/svnrootsvnadmin create Project1svnadmin create Project2svnadmin create Project3分别创建了三个项目的版本库,版本库目录conf中存在passwd 、authz、和svnserve.conf 文件passwd - 用于存放本svn库的用户名和密码authz - 存放本svn库的访问授权信息svnserve.conf 文件为存放本svn库的全局访问控制信息6. 将passwd 、authz文件拷贝到/home/svnroot/CodeAuth中,将三个项目下conf目录中的passwd 和authz文件删除7. 修改三个项目中conf目录下的svnserve.conf 文件,最快的办法是修改一个项目下的svnserve.conf 文件,使用它覆盖其他两个项目下的svnserve.conf 文件。

svnserve.conf 修改为[general]anon-access = none auth-access = writepassword-db = /CodeAuth/passwdauthz-db = /CodeAuth/authz 8. 修改/home/svnroot/CodeAuth下的passwd文件为[users] admin=admin0019. 修改/home/svnroot/CodeAuth下的Authz文件为[groups] admin_group=admin[Project1:/]@admin_group=rw*=[Project2:/]@admin_group=rw*=[Project3:/]@admin_group=rw*=10. 启动SVN服务svnserve -d -r /home/svnrootOK,服务器端配置完毕!。

CentOS linux下安装和配置Apache+SVN(用浏览器http方式访问SVN目录)

CentOS linux下安装和配置Apache+SVN(用浏览器http方式访问SVN目录)

CentOS linux下安装和配置Apache+SVN(用浏览器http方式访问SVN目录)在CentOS linux下安装SVN,我们可以进行以下步骤:第一步:安装CentOS Linux操作系统,并在CentOS安装进行的同时,自定义安装这一步,一定要勾选Subversion(在“开发工具”里)和Web服务器(Apache)。

我用的是CentOS 6.4版本,只需要安装DVD1这个iso文件即可。

这个DVD文件中有我们下面用到的许多配置文件和模块文件,像mod_dav_svn等文件,都不需要用yum 命令进行额外下载安装(光盘中的文件的版本都是进行严格匹配的)。

第一次启动CentOS时,你就可以运行命令svn --version,查看是否提示SVN版本信息。

[root@svn ~]# svn --versionsvn,版本1.6.11 (r934486)编译于 Jun 232012,00:44:03版权所有 (C) 2000-2009 CollabNet。

Subversion 是开放源代码软件,请参阅 / 站点。

此产品包含由 CollabNet(/) 开发的软件。

可使用以下的版本库访问模块:* ra_neon : 通过 WebDAV 协议使用 neon 访问版本库的模块。

-处理“http”方案-处理“https”方案* ra_svn : 使用 svn 网络协议访问版本库的模块。

-使用 Cyrus SASL 认证-处理“svn”方案* ra_local : 访问本地磁盘的版本库模块。

- 处理“file”方案【准备工作】1.关闭防火墙、做好网络配置。

此时,我们要关闭防火墙,执行命令service iptables stop。

同时执行命令setup,选择“网络配置”,去掉DHCP,设置192.168.2.20(客户端也在192.168.2.x同一个网段内),子网掩码255.255.255.0。

linux搭建svn服务器的方法步骤

linux搭建svn服务器的方法步骤

linux搭建svn服务器的⽅法步骤⼀:安装svnyum install -y subversion⼆:创建仓库1:创建仓库⽬录mkdir -p /var/project/test2:创建仓库svnadmin create /var/project/test创建成功后,在/var/project/test⽬录下如下⽬录:drwxr-xr-x. 2 root root 51 1⽉ 30 13:26 confdrwxr-sr-x. 6 root root 4096 1⽉ 30 13:26 db-r--r--r--. 1 root root 2 1⽉ 30 13:26 formatdrwxr-xr-x. 2 root root 4096 1⽉ 30 13:26 hooksdrwxr-xr-x. 2 root root 39 1⽉ 30 13:26 locks-rw-r--r--. 1 root root 229 1⽉ 30 13:26 README.txtconf⽬录下是svn的配置⽬录,其中包括:-rw-r--r--. 1 root root 1080 1⽉ 30 13:26 authz #权限控制-rw-r--r--. 1 root root 309 1⽉ 30 13:26 passwd #密码管理-rw-r--r--. 1 root root 3090 1⽉ 30 13:26 svnserve.conf #SVN服务进程配置三:svn配置1:权限配置(/var/project/test/conf/authz)#⽤户分组(admin->管理员,development ->开发 other->其他)[groups]admin = test1 #管理员⽤户test1development = test2,test3 #开发⽤户test2,test3other = test4,test5,test6 #其他⽤户test4,,test5,test6#权限配置[/]@admin = rw #管理员读写权限@development = rw #开发读写权限@other = r #其他读权限test7 = rw #test7⽤户读写权限2:密码配置(/var/project/test/conf/passwd)#密码配置,格式为⽤户名=密码,密码为明⽂[users]test1 = test1test2 = test2test3 = test3test4 = test4test5 = test5test6 = test6test7 = test73:SVN服务进程配置(/var/project/test/conf/svnserve.conf)[general]anon-access = none #匿名⽤户⽆权访问auth-access = write #认证⽤户可读写password-db = passwd #指定⽤户认证密码⽂件authz-db = authz #指定权限配置⽂件四:启动svn服务(默认端⼝号3690)复制代码代码如下:svnserve -d -r /var/project #-d 服务后台运⾏ -r 指定⼯作⽬录,/var/project表⽰指定⼯作⽬录,注意不能指定仓库名地址(/var/project/test)指定端⼝启动svnsvnserve -d -r /var/project --listen-port 3691五:关闭防⽕墙,或开启指定端⼝号1:关闭防⽕墙systemctl stop firewalld2:开启指定防⽕墙#开启3690端⼝firewall-cmd --zone=public --add-port=3690/tcp --permanent#刷新配置firewall-cmd --reload六:客户端连接并上传⽂件windows上连接svn1:新建⼀个⽬录,右击选择svn 检出2:在版本库上填写linux的svn地址 svn://ip:3690/仓库名 (这⾥的仓库名不是/var/project/test⽽是/test)2:填写⽤户名密码这时候我们可以看到此⽬录下⽣成了⼀个.svn⽂件,说明我们已经连接上了linux上的svn服务器3:上传⽂件现在我们新建⼀个test.txt⽂件,在⾥⾯随便填⼀些信息(1)右击选择add然后选择test.txt⽂件,点击确定,这时候我们会看到test.txt⽂件上会多了⼀个加号(2):上传右击选择提交填写备注选择要上传的⽂件后点击确定这时候我们可以看到test.txt⽂件上的加号会变成绿⾊的对号,表⽰上传成功但是这时候我们发现我们在/var/project/test⽬录下根本就没有找到我们上传的⽂件,这是为什么呢?难道我们没有上传成功,这是由于把⽂件上传到SVN版本库后,上传的⽂件不再以⽂件原来的格式存储,⽽是被svn以它⾃定义的格式压缩成版本库数据,存放在版本库中,svn服务器版本库有两种格式,⼀种为FSFS,⼀种为BDB这时候我们就需要在linux中实现检出4:检出svn checkout svn://192.168.11.201/test /data/test #svn://192.168.11.201/test表⽰需要检出的仓库地址 /data/test表⽰需要检出到哪个⽬录下这是我们可以在/data/test⽬录下看到我们之前在客户端上传的⽂件,但是现在问题⼜来了,我们在客户端上传⽂件之后,不可能每次都在服务器进⾏检出操作吧,那么如何进⾏⾃动检出呢?5:⾃动检出配置在/var/project/test/hooks⽬录下新建⼀个post-commit⽂件,post-commit⽂件添加内容为:#!/bin/shREPOS="$1" #仓库REV="$2" #版本号export.UTF-8 #编码SVN=/usr/bin/svn #svn地址WEB=/data/test #要更新的项⽬⽬录$SVN update $WEB --username test1 --password test1 #--username test1表⽰设置⽤户名 --password test1表⽰设置密码将post-commit设置为可执⾏chmod +x /var/project/test/hooks/post-commit到此⾃动检出配置完成,不过注意,第⼀次的时候需要⼿动检出,之后就不需要了,到此linux搭建svn服务器完成以上就是本⽂的全部内容,希望对⼤家的学习有所帮助,也希望⼤家多多⽀持。

linux下搭建svn服务器

linux下搭建svn服务器

自己摸索了几天,今天终于小有成就!从零基础逐渐壮大,收获还是颇丰的!系统环境:虚拟机中Red Hat Enterprise Linux 4客户端windows: TortoiseSVN-1.6.5.16974-win32-svn-1.6.5.msi需要的软件包:subversion-1.6.5.tar.bz2apr-1.3.8.tar.gz apr-util-1.3.9.tar.gzsqlite-amalgamation-3.6.13.tar.gzhttpd-2.2.4(不需要支持http访问的可以不安装)文章将阐述全过程,不需要支持http的可以不配置appche接下来的安装都是在root身份下安装apache#tar -zxvf httpd-2.2.4.tar.gz#cd httpd-2.2.4.tar.gz#./configure --prefix=/usr/local/apache 此处将会在后面的make时创建--enable-dav --enable-so --enable-modules=most注:--enbalce-dav 选项一定要加上启动apache#/usr/local/apache/bin/apachectl start打开浏览器http://192.168.58.xxx 如果有显示"It works!"则证明已经安装成功注:其中IP为安装apache机器的IP 也就是svn服务器的IP#make#make install安装apr apr-util#tar -zxvf apr-1.3.8.tar.gz注:解压时也可在此指定解压路径当然了安装时要进入其中#cd apr-1.3.8#./configure --prefix=/usr/local/apr 此路径为最终安装路径留个印象后面能用到#make#make install#tar -zxvf apr-util-1.3.9.tar.gz#cd apr-util-1.3.9.tar.gz#./configure=/usr/local/apr-util --with-apr=/usr/local/apr 提供apr支持 =后面为apr安装路径#make#make install安装 sqlite#tar -zxvf sqlite-amalgamation-3.6.13.tar.gz#cd sqlite-3.6.13#./configure --prefix=/usr/local/sqlite#make#make install安装svn#tar -zxvf subversion-1.6.5.tar.bz2#cd subversion-1.6.5#./configure --prefix=/usr/local/svn--with-paxs=/usr/local/apache/bin/apxs--with-apr=/usr/local/apr--with-apr-util=/usr/local/apr-util--with-sqlite=/usr/local/sqlite--with-zlib=/usr/local/zlib 此处地址不定看看你zlib的安装路径在哪把它写在这没有的话自己装一个路径写这--with-ssl--enable-maintainer-mode#make#make install注:--with-zlib=/...后面不写路径会报错svn服务器安装结束安装svn客户端windows 下安装TortoiseSVN-1.6.5.16974-win32-svn-1.6.5.msi 常用软件安装方法SVN配置建立版本库#mkdir -p /opt/svn#/usr/bin svnadmin create /opt/svn/repository#ls -l /opt/svn/repository有内容显示说明版本库建立成功#vi /opt/svn/repository/conf/svnserve.conf修改如下内容:并把每行的#去掉[general]anon-access = noneauth-access = writepassword-db = /opt/svn/repository/conf/passwd 此为系统自动生成文件,但要修改过之后才能生效authz-db = /opt/svn/authz.conf 此文件还没有创建但系统已经为此自动生成了一个文件,路径同上我用我自己创建的realm = repository创建svn用户此用户也就是客户端的登陆用户#htpasswd -c /opt/svn/htpasswd admin之后体统会提示输入密码、校验密码注:第一次创建svn用户时要加 -c 意思是:如果htpasswd存在将覆盖写入往后再创建svn用户时也是执行此命令不过不用加 -cadmin 为用户名标识登陆用户例:新增加用户user#htpasswd /opt/svn/htpasswd user用户配置文件#vi /opt/svn/repository/conf/passwd在最下面添加两行代码格式为:用户名 = 密码admin = admin 前不要加# 、留空格user = user权限配置文件#vi /opt/svn/authz.conf写入如下代码[groups]admin = admin,user[/]@admin = rw 代表admin的所有组员有读写权限注:admin组里面有admin和user组员其中有一个以上的组员时要用逗号隔开这一部分自己可以找资料看看设计内容很多,我只建了一个版本库,还有多个版本库的设置,版本库下的具体目录权限设置启动svn服务#svnserver -d --listen-port 9999 -r /opt/svn/repository注:启动时也是有名堂的可以找资料看看-d 后台运行9999是要监听的端口-r 后面的是版本库路径#ps -ef | grep svnserve 查看svn有没有启动成功成功显示root 5088 1 0 Jul05 ? 00:00:00 svnserve -d --listen-port 9999 -r /opt/svn/repository客户端登陆右键单击某个文件夹点击check out输入URL:svn://192.168.58.XXX:9999/opt/svn/repository其中IP为启动svn服务的机器的IP不用支持http的下面范围内可以不用理会/***********************************/配置apache#vi /usr/local/apache/conf/httpd.conf做如下修改:listen 80 如果是以root用户启动apache此处不用修改其他用户启动的要修改大于1024的否则报错# Example:# LoadModule foo_module modules/mod_foo.soLoadModule dav_module modules/mod_dav.soLoadModule dav_svn_module modules/mod_dav_svn.soLoadModule authz_svn_module modules/mod_authz_svn.so注:此段代码我的没有我自己添加的因为后面启动apache时报:Invalid command 'DAV', perhaps mis-spelled or defined by a module not included in the server configuration 别光添加代码还要确保此文件上级目录下的 modules 里面有相应的模块没有的话另外下载其他的 httpd-xxx-xxx 解压安装把其中的相应模块拷贝过来User svnGroup svnServerName 192.168.58.xxx IP设置svn服务器的IP把DocumentRoot "/usr/local/apache/htdocs"改为DocumentRoot "/opt/svn/repository"把<Directory "/usr/local/apache/htdocs">改为<Directory "/opt/svn/repository">另外在最下面添加:<Location /opt/svn>DAV svn 如果没有Loadmodules xxx_dav xxx.so 此处会报错SVNParentPath /opt/svn svn设置AuthType Basic 连接类型设置AuthName "Subversion Authorization" 连接框提示AuthzSVNAccessFile /opt/svn/authz.conf 权限配置文件此文件中有 [group] AuthUserFile /opt/svn/htpasswd 此文件中存的是用 htpasswd 创建的Require valid-user 采用何种认证</Location>重启apache 验证配置/usr/local/apache/bin/apachectl restart 如果没有启动用start打开浏览器访问http://192.168.58.xxx/opt/svn/repository --》弹出登陆框如果不弹出登陆框则配置失败/***********************************/最后:我安装过程中错误千奇百怪的,一点一点上网搜资料,慢慢的就完善了!也预祝你们顺利!。

Linux下安装svn

Linux下安装svn

一、准备关联包:1.apr-1.3.8.tar.gz。

下载页面:/download.php?id=25589&ResourceID=470直接复制:/distfiles/apr-1.3.8.tar.gz2.apr-util-1.3.9.tar.gz:下载页面:/download.php?id=25276&ResourceID=472直接复制:/distfiles/apr-util-1.3.9.tar.gz3.Apache,系统已默认安装,其版本可用apachectl–v 查看,我的是Apache/2.2.3。

建议重新安装,因各种包找不到。

下载httpd-2.2.17.tar.gz:下载页面:/download.cgi#apache22直接复制:/apache-mirror//httpd/httpd-2.2.17.tar.gz4.Svn,可能会有版本冲突,现尝试下载1.5.0版本subversion-1.5.0.tar.gz:下载页面:/index.php?q=node/73直接复制:/downloads/subversion-1.5.0.tar.gzSub version-deps-1.5.0-rc5.tar:直接复制:/downloads/subversion-deps-1.5.0-rc5.tar.gz 若只不下载deps,可能会出错:提示你neno没有安装zlib找不到二、安装:1.安装apr:a)解压:tar –xvf apr-1.3.8.tar.gzb)编译:./configure (路径应该是/usr/local/apr)c)安装:make && make install2.安装apr-util:a)解压:tar –xvfapr-util-1.3.9.tar.gzb)编译:./configure --with-apr=/usr/local/aprc)安装:make && make install3.安装apache:a)先去/usr/local下创建apache目录命令:mkdir /usr/local/apacheb)解压下载的apache,计入目录并安装,(一各回车一个命令)tar –xvfhttpd-2.2.17.tar.gzcd httpd-2.2.17./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr/bin/apr-1-config--with-apr-util=/usr/local/apr/bin/apu-1-config --enable-modules=so --enable-dav--enable-maintainer-mode --enable-rewritemakemake install./configure //配置源代码树--prefix=/usr/local/apache2 //体系无关文件的顶级安装目录PREFIX ,也就Apache的安装目录。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

环境1. 安装Apache2.2.142. 安装Subversion 1.6.63. 安装后的系统设置4. Apache设置5. svn库的配置6. 运行SVN服务器Created by okala at 2009-12-25环境:Red Hat Enterprise Linux Server release 5.3 (Tikanga)httpd-2.2.14.tar.gzsubversion-1.6.6.tar.gz到官网/ 下载当前最新的稳定版本subversion-1.6.6.tar.gz 到官网/ 下载当前最新的稳定版本httpd-2.2.14.tar.gz1. 安装Apache2.2.14用root账号执行以下命令:引用tar zxf httpd-2.2.14.tar.gz#解压到当前目录引用cd httpd-2.2.14#进入解压后的目录引用./configure --prefix=/local/svnroot/apache2 --enable-so --enable-mods-shared=all --enable-dav=share --enable-dav-fs --with-ldap --enable-ldap --enable-authnz-ldap--enable-authn-alias#定义安装的目标路径(可据自己需要修改),使能LDAP引用make#编译引用make install#安装引用/local/svnroot/apache2/bin/apachectl start#启动Apache用IE访问以下网址,http://hostIP/,如果提示It works!,则Apache安装成功。

然后就可以先停止Apache了:引用/local/svnroot/apache2/bin/apachectl stop#停止Apache2. 安装Subversion 1.6.6用root账号执行以下命令:引用tar zxf subversion-1.6.6.tar.gz#解压到当前目录引用cd subversion-1.6.6#进入解压后的目录引用./configure --with-apxs=/local/svnroot/apache2/bin/apxs--prefix=/local/svnroot/subversion --with-apr=/local/svnroot/apache2--with-apr-util=/local/svnroot/apache2 --with-ssl --enable-maintainer-mode #定义安装的目标路径(可据自己需要修改),指明Apache的安装路径,使能SSL 引用make#编译引用make install#安装3. 安装后的系统设置用root账号执行以下命令:引用useradd svnroot#创建Linux系统里的账号svnroot引用passwd svnroot#设置svnroot账号的密码引用chown –R svnroot.svnroot/local/svnroot #把svn目录下所有文件改为属于svnroot引用chmod 750 /local/svnroot#把svn目录设为其他Linux用户不可读4. Apache设置引用su svnroot#由root账号切换到svnroot账号来执行以下的命令引用vi /local/svnroot/apache2/conf/httpd.conf#编辑Apache服务器的配置文件下述参数根据自己的安装情况进行相应修改:Java代码ServerRoot "/local/svnroot/apache2"ServerRoot "/local/svnroot/apache2"Java代码Listen 80Listen 80#可修改为其他的端口,则访问时也要在URL里加上对应的端口号Java代码User svnrootGroup svnrootUser svnrootGroup svnroot#前面把svn安装目录的所有文件改为属于svnroot,这里这样设置,那么Apache运行时就会切换到使用该Linux里的账号svnroot与组svnrootJava代码ServerAdmin sample@ServerAdmin sample@#定义一个邮箱地址Java代码ServerName 192.18.1.1ServerName 192.18.1.1#该主机的地址#ErrorLog "logs/error_log"ErrorLog "|/local/svnroot/apache2/bin/rotatelogs/local/svnroot/apache2/logs/error_log.%Y%m%d.log 86400 480"#修改Errorlog记录的方式为按天记录,避免一个log文件过大# CustomLog "logs/access_log" commonCustomLog "|/local/svnroot/apache2/bin/rotatelogs/local/svnroot/apache2/logs/access_log.%Y%m%d.log 86400 480" common#修改accesslog记录的方式为按天记录,避免一个log文件过大#在末尾开始加入这部分集成LDAP方面使用的参数Java代码LDAPSharedCacheSize 200000LDAPCacheEntries 1024LDAPCacheTTL 600LDAPOpCacheEntries 1024LDAPOpCacheTTL 600AuthLDAPURL"ldap://192.168.1.1:3268/DC=lala,DC=lala,DC=lala,DC=com?sAMAccountName?sub?(objectClass=*)" NONEAuthLDAPBindDN "CN=la, lala,OU=users,OU=lala,ou=lala ,DC=lala,DC=lala,DC=la,dc=com"AuthLDAPBindPassword "password"LDAPSharedCacheSize 200000LDAPCacheEntries 1024LDAPCacheTTL 600LDAPOpCacheEntries 1024LDAPOpCacheTTL 600AuthLDAPURL"ldap://192.168.1.1:3268/DC=lala,DC=lala,DC=lala,DC=com?sAMAccountName?sub?(objectClass=*)" NONEAuthLDAPBindDN "CN=la, lala,OU=users,OU=lala,ou=lala ,DC=lala,DC=lala,DC=la,dc=com"AuthLDAPBindPassword "password"#这部分指定访问LDAP服务器的URL、用户名、密码Java代码RewriteEngine onRewriteCond %{REQUEST_METHOD} ^(TRACE|TRACK)RewriteRule .* - [F]RewriteEngine onRewriteCond %{REQUEST_METHOD} ^(TRACE|TRACK)RewriteRule .* - [F]Java代码include /local/svnroot/apache2/conf/httpd.projectinclude /local/svnroot/apache2/conf/httpd.project#我把各个库的配置信息用一个独立的文件来管理5. svn库的配置引用su svnroot#切换到svnroot账号,如果用root账号创建svn库,会有导致无法提交文件到该库的错误引用/local/svnroot/subversion/bin/svnadmin create --fs-type fsfs /local/svnroot/repository/sw1 #该命令用svnadmin创建fsfs存储格式的svn库“sw1”引用vi /local/svnroot/apache2/conf/httpd.project#创建httpd.project文件,输入以下内容:Java代码#到时访问的路径就是http://hostip/sw1DAV svn #使用dav传输SVNPath /local/svnroot/repository/sw1 #sw1库在Linux系统中的真实物理路径AuthzSVNAccessFile /local/svnroot/permission/sw1.perm #配置各个用户访问权限的文件AuthType BasicAuthName "sw1 SVN repository." #客户端访问该库时显示的登陆提示信息AuthBasicProvider file abc #先看文件中是否有该用户名,再看LDAP中有无该用户名AuthzLDAPAuthoritative offAuthUserFile /local/svnroot/user/er #记录各个用户名与其密码的文件Satisfy Any #允许匿名访问,若不允许,可注释掉此行Require valid-user #要求用户名与密码验证#到时访问的路径就是http://hostip/sw1DAV svn #使用dav传输SVNPath /local/svnroot/repository/sw1 #sw1库在Linux系统中的真实物理路径AuthzSVNAccessFile /local/svnroot/permission/sw1.perm #配置各个用户访问权限的文件AuthType BasicAuthName "sw1 SVN repository." #客户端访问该库时显示的登陆提示信息AuthBasicProvider file abc #先看文件中是否有该用户名,再看LDAP中有无该用户名AuthzLDAPAuthoritative offAuthUserFile /local/svnroot/user/er #记录各个用户名与其密码的文件Satisfy Any #允许匿名访问,若不允许,可注释掉此行Require valid-user #要求用户名与密码验证Shift+分号,输入wq保存后退出编辑模式:wq引用vi /local/svnroot/permission/sw1.perm#创建sw1.perm权限控制文件,输入:[/]Java代码test = rw #账号test拥有读写权限* = #其他账号没有读写权限test = rw #账号test拥有读写权限* = #其他账号没有读写权限Shift+分号,输入wq保存后退出编辑模式:wq引用/local/svnroot/apache2/bin/htpasswd -cm /local/svnroot/user/er test#-c参数表明创建文件er,若此文件已存在,则不要-c参数#-m表示用MD5加密协议#此命令往er里添加用户test,随后设置其密码至此,安装好了Apache、SVN,配置好了svn安装目录的权限,配置好了Apache建立好了库设立了库里目录的访问权限创建了该库的账户于是,可以运行啦6. 运行SVN服务器用root账号执行:引用/local/svnroot/apache2/bin/apachectl start然后用IE或TortoiseSVN访问建立好的svn库:http://hostip/sw1输入账号test及其密码,应该就能访问了,里面什么内容也没有呢如果是LDAP账户,则只需要在sw1.perm文件里分配权限给相应的账号就可以了,不需要再创建到er文件里。

相关文档
最新文档