仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 468|回复: 7
打印 上一主题 下一主题

[CentOS(社区)] 给大家带来CentOS下SVN装置及设置图解教程

[复制链接]
小妖女 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-14 20:40:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
欢迎大家来到仓酷云论坛!背景

本人有台云办事器,平常的一些进修材料就想经由过程SVN办理起来,在网上找了很多linux搭建svn的教程,但是没有一篇完全的,感到总弱点甚么大概有点毛病,前面本人经由综合与对照,而且多台办事器下面的测试,做了以下教程,供人人参考以后。
svn办事器有2种运转体例

1.自力办事器(比方:svn://***.com/***);
2.借助apache。(比方:http://svn.***.com/***);
为了不依附apache,选择第一种体例-自力的svn办事器。
svn存储版本数据也有2种体例:
1.bdb;
2.fsfs。
由于BDB体例在办事器中止时,有大概锁住数据(弄ldap时就深受其害,没法根治),以是仍是FSFS体例更宁静一点,我也选择这类体例。
我的体系情况:Centos-6.2+Php-5.4.3+Nginx-1.3.0+Mysql-5.5.25+subversion-1.6.6


下载相干软件

wgethttp://subversion.tigris.org/downloads/subversion-1.6.6.tar.gz
wgethttp://subversion.tigris.org/downloads/subversion-deps-1.6.6.tar.gz

编纂

1、检察是不是装置了svn工具
下令:rpm-qa|grepsubversion
假如办事器已装置了则不必要举行装置,假如没有装置能够举行全新的装置
2、起首检测体系有无装置SSL:
find/-nameopensslv.h
假如找不到,就实行以下下令举行装置:
yuminstallopenssl
yuminstallopenssl-devel
装置以后用find/-nameopensslv.h下令找到opensslv.h地点的目次,即以下Cwith-openssl=前面的路径,
3、解压svn装置文件
subversion-1.6.6.tar.gz
subversion-deps-1.6.6.tar.gz
下令以下:

1
2
tarzxvfsubversion-1.6.6.tar.gz
tarzxvfsubversion-deps-1.6.6.tar.gz



tar为解压下令,zxvf为tar下令的参数,用于解压tar.gz格局紧缩的文件。
解压后天生subversion-1.6.6子目次,两个紧缩包解压后城市主动放到此目次下,不必手动变动。
进进解压子目次cdsubversion-1.6.6举行编译。
4、编译:

1
2
./configure--prefix=/usr/local/svn--with-openssl=/usr/include/openssl
--without-berkeley-db



前面以svnserve体例运转,以是不加apache编译参数。以fsfs格局存储版本库,不编译berkeley-db
假如编译时报以下毛病:
noacceptableCcompilerfoundin$PATH
申明没有gcc库,利用以下下令装置gcc后再编译:
yum-yinstallgcc
假如最初呈现上面WARNING,我们间接疏忽便可,由于不利用BDB存储。

1
2
3
4
5
6
7
8
configure:WARNING:wehaveconfiguredwithoutBDBfilesystemsupport
YoudontseemtohaveBerkeleyDBversion4.0.14ornewer
installedandlinkedtoAPR-UTIL.WehavecreatedMakefileswhich
willbuildwithouttheBerkeleyDBback-end;yourrepositorieswill
useFSFSasthedefaultback-end.Youcanfindthelatestversionof
BerkeleyDBhere:

http://www.sleepycat.com/download/index.shtml



装置

make
makeinstall
假如makeinstall呈现上面毛病:
/home/upload/subversion-1.6.6/subversion/svnversion/.libs/lt-svnversion:errorwhileloadingsharedlibraries:libiconv.so.2:cannotopensharedobjectfile:Nosuchfileordirectory
make:***[revision-install]Error127
办理举措:
1、编纂/etc/ld.so.conf文件
vi/etc/ld.so.conf
增加上面一行代码
/usr/local/lib
2、保留后运转ldconfig:
/sbin/ldconfig
注:ld.so.conf和ldconfig用于保护体系静态链接库。
3、然后再装置
make&&makeinstall
测试是不是装置乐成

1
/usr/local/svn/bin/svnserve--version



假如显现以下,svn装置乐成:
1
2
3
4
5
6
7
8
9
10
11
12
13
svnserve,version1.6.6(r40053)
compiledDec252012,13:14:38

Copyright(C)2000-2009CollabNet.
Subversionisopensourcesoftware,seehttp://subversion.tigris.org/
ThisproductincludessoftwaredevelopedbyCollabNet
(http://www.Collab.Net/).

Thefollowingrepositoryback-end(FS)modulesareavailable:

*fs_fs:Moduleforworkingwithaplainfile(FSFS)repository.

CyrusSASLauthenticationisavailable.



4、为了便利下操纵,把svn相干的下令增加到情况变量中:
echo“exportPATH=$PATH:/usr/local/svn/bin/”>>/etc/profile
source/etc/profile

设置svn

1、创建SVN的根目次
mkdir-p/opt/svn/
2、创建一个产物堆栈
mkdir-p/opt/svn/tshop/
svnadmincreate/opt/svn/tshop/
假如你们的研发中央有多个产物组,每一个产物组能够创建一个SVN堆栈
3、修正版本设置库文件
vi/opt/svn/tshop/conf/svnserve.conf
修正后的文件内容以下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
###Thisfilecontrolstheconfigurationofthesvnservedaemon,ifyou
###useittoallowaccesstothisrepository.(Ifyouonlyallow
###accessthroughhttp:and/orfile:URLs,thenthisfileis
###irrelevant.)

###Visithttp://subversion.tigris.org/formoreinformation.

[general]
###Theseoptionscontrolaccesstotherepositoryforunauthenticated
###andauthenticatedusers.Validvaluesare"write","read",
###and"none".Thesamplesettingsbelowarethedefaults.
anon-access=none#注重这里必需设置,不然一切用户不必暗码就能够会见
auth-access=write
###Thepassword-dboptioncontrolsthelocationofthepassword
###databasefile.Unlessyouspecifyapathstartingwitha/,
###thefileslocationisrelativetothedirectorycontaining
###thisconfigurationfile.
###IfSASLisenabled(seebelow),thisfilewillNOTbeused.
###Uncommentthelinebelowtousethedefaultpasswordfile.
password-db=passwd
###Theauthz-dboptioncontrolsthelocationoftheauthorization
###rulesforpath-basedaccesscontrol.Unlessyouspecifyapath
###startingwitha/,thefileslocationisrelativetothethe
###directorycontainingthisfile.Ifyoudontspecifyan
###authz-db,nopath-basedaccesscontrolisdone.
###Uncommentthelinebelowtousethedefaultauthorizationfile.
authz-db=authz
###Thisoptionspecifiestheauthenticationrealmoftherepository.
###Iftworepositorieshavethesameauthenticationrealm,theyshould
###havethesamepassworddatabase,andviceversa.Thedefaultrealm
###isrepositorysuuid.
realm=tshop

[sasl]
###ThisoptionspecifieswhetheryouwanttousetheCyrusSASL
###libraryforauthentication.Defaultisfalse.
###ThissectionwillbeignoredifsvnserveisnotbuiltwithCyrus
###SASLsupport;tocheck,runsvnserve--versionandlookforaline
###readingCyrusSASLauthenticationisavailable.
#use-sasl=true
###Theseoptionsspecifythedesiredstrengthofthesecuritylayer
###thatyouwantSASLtoprovide.0meansnoencryption,1means
###integrity-checkingonly,valueslargerthan1arecorrelated
###totheeffectivekeylengthforencryption(e.g.128means128-bit
###encryption).Thevaluesbelowarethedefaults.
#min-encryption=0
#max-encryption=256



对用户设置文件的修正是当即失效的,不用重启svn。
4、入手下手设置passwd用户账号信息

1
2
3
4
5
6
7
8
9
10
11
12
13
vi/data/svn/repos/conf/passwd
修正完以后的内容以下:
###Thisfileisanexamplepasswordfileforsvnserve.
###Itsformatissimilartothatofsvnserve.conf.Asshowninthe
###examplebelowitcontainsonesectionlabelled[users].
###Thenameandpasswordforeachuserfollow,oneaccountperline.
###鄙人面增加用户和暗码,每行一组username=password
[users]
#harry=harryssecret
#sally=sallyssecret
###===========上面是我增加的用户信息========#######
iitshare=password1
itblood=password2



5、入手下手设置authz.用户会见权限
vi/data/svn/repos/conf/authz
修正完以后的内容以下:

<divstyle="margin:0px;padding:0px;border:0px;color:#333333;font-family:microsoftyahei,verdana,geneva,sans-serif;font-size:14px;line-height:21px;background-color:#ffffff;"><divid="highlighter_126763"class="syntaxhighlighterjava"style="margin-top:1em!important;margin-bottom:1em!important;width:669px;overflow-y:hidden!important;">1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
<divclass="container"style="height:auto!important;direction:ltr!important;">###Thisfileisanexampleauthorizationfileforsvnserve.
###Itsformatisidenticaltothatofmod_authz_svnauthorization
###files.
<divclass="linenumber4index3alt1"style="height:auto!important;direction:ltr!important;">###Asshownbeloweachsectiondefinesauthorizations
爱飞 该用户已被删除
沙发
发表于 2015-1-25 23:10:43 | 只看该作者
眼看这个学期的Linux课程已经告一段落了,我觉得有必要写一遍心得体会来总结一下这学期对着门课程的学习。
再现理想 该用户已被删除
板凳
发表于 2015-2-4 17:13:48 | 只看该作者
当然你不需搭建所有服务,可以慢慢来。自己多动手,不要非等着别人帮你解决问题。
灵魂腐蚀 该用户已被删除
地板
发表于 2015-2-10 05:33:34 | 只看该作者
在学习linux的工程中,linux学习方法有很多种,这里是小编的学习心得,给大家拿出来分享一下。
不帅 该用户已被删除
5#
发表于 2015-2-28 23:29:46 | 只看该作者
我想即使Linux高手也很难快速准确精练的回答你。
若相依 该用户已被删除
6#
发表于 2015-3-10 12:43:23 | 只看该作者
Linux只是个内核!这点很重要,你必须理解这一点。只有一个内核是不能构成一个操作系统的。
愤怒的大鸟 该用户已被删除
7#
发表于 2015-3-17 08:32:50 | 只看该作者
以前觉得Linux就跟dos一样,全是用命令窗口,相对于窗口界面来说多麻烦呀。
山那边是海 该用户已被删除
8#
发表于 2015-3-24 05:16:19 | 只看该作者
请问谁有Linux的学习心得的吗?简单的说说?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 19:43

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表