感谢支持
我们一直在努力

CentOS6.9下svn快速安装配置方法

本文实例为大家分享了CentOS6.9快速安装配置svn的具体代码,供大家参考,具体内容如下

环境介绍:

操作系统:CentOS release 6.9 (Final)
192.168.65.130 (svn服务器)
192.168.65.129 (svn客户端)

一、svn安装检查(在两台上都执行)

?

1

2

3

4

5

if [ ! -f /usr/bin/svn ]; then

 yum -y install subversion >/dev/null

 echo "svn has been installed." >/dev/null

 /usr/bin/svn --version|head -1|awk -F" " '{print $3}'

fi

二、创建版本库文件夹(仅在130上操作)

?

1

2

3

4

mkdir -p /data/svn/sinsvn

#创建版本库

svnadmin create /data/svn/sinsvn

mkdir -p /data/www/sinsvn

三、主要操作

 

?

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

51

52

53

54

#导入所需管理的项目到版本库repository中

svn import /data/www/sinsvn/ file:///data/svn/sinsvn -m "svn first test"

#检查是否导入成功

svn list --verbose file:///data/svn/sinsvn

#修改版本库的配置文件

# vim /data/svn/sinsvn/conf/svnserve.conf

cat >/data/svn/sinsvn/conf/svnserve.conf <<"EOF"

[general]

anon-access = none

auth-access = write

password-db = /data/svn/passwd

authz-db = /data/svn/authz

realm =sinsvn

EOF

 

cp /data/svn/sinsvn/conf/passwd /data/svn

cp /data/svn/sinsvn/conf/authz /data/svn

 

#修改允许访问版本库的用户文件

# vim /data/svn/passwd

cat >/data/svn/passwd <<"EOF"

[users]

harry = harry

sin = sin

EOF

 

 

# vim /data/svn/authz

cat >/data/svn/authz <<"EOF"

[groups]

myteam = harry,sin

 

[/]

harry = rw

 

[sinsvn:/]

@myteam = rw

 

[secsvn:/www]

@myteam =r

sin= rw

 

[sincms:/]

sin= rw

harry=

EOF

 

 

# 启动 svn 服务

svnserve -d -r /data/svn/

 

# 查看

ps -ef|grep svnserve|grep -v 'grep'

netstat -anltp|grep 3690

四、测试

?

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

51

52

53

54

# 测试,在另外一台机器上操作(129),目的是效果更为明显些

# 1、mkdir -p /data/www

mkdir -p /data/www

cd /data/www/

# 2、svn co 代码

svn co svn://192.168.65.130/sinsvn --username=harry --password=harry

 

# 3、添加branches,tags,trunk目录

cd sinsvn/

mkdir branches

mkdir tags

mkdir trunk

 

svn add branches trunk tags

svn ci -m 'create branches trunk tags dir'

 

# 4、在trunk中添加测试文件,并提交到版本库

cd trunk

touch index.php

mkdir class

touch class/conn.php

 

svn add index.php

svn add class/

 

......

 

svn ci -m 'test file'

 

 

svn delete index.php class class/ index.php

svn ci -m 'delete files'

 

mkdir webgame

svn add webgame/

svn ci -m 'add webgame dir'

 

# 追加操作

cd webgame

cp /tmp/VMwareTools-10.2.0-7259539.tar.gz .

cp /tmp/yum.log .

svn add *

svn ci -m 'add VMwareTools yum.log for test'

 

 

############### 这里假设130的机器上有个web项目

mkdir -p /data/webdir

cd /data/webdir

svn co svn://192.168.65.130/sinsvn/trunk/webgame --username=harry --password=harry

 

# 追加操作

cd /data/webdir/webgame/

svn update

ll # 可以查看到更新后的结果

五、脚本定制更新

?

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

# 定时更新脚本(针对整个目录自动更新的脚本,被动模式)

cat >/root/svnauto_update.sh<<"EOF"

cd /data/webdir/webgame/

svn update &>>/tmp/svnauto_update.log

EOF

 

chmod +x /root/svnauto_update.sh

chmod +x /etc/crontab

/etc/init.d/crond restart

# 添加至crontab计划任务中

 

 

cat >>/var/spool/cron/root<<"EOF"

 

# svnauto_update.sh

* 09-23 * * * /bin/sh /root/svnauto_update.sh

EOF

 

# 自动更新脚本(针对版本号触发式更新)

#svn 目录:/data/svn/sinsvn

#站点目录:/data/webdir/webgame

 

#实现:

#1.找到svn项目的hooks目录,这里是/data/svn/sinsvn/hooks。目录中默认会几个对应操作的钩子模板,我们需要创建一个post-commit的文件。

find /data/svn/sinsvn/ -name hooks

 

#2.新建post-commit,内容如下

cat >/data/svn/sinsvn/hooks/post-commit<<"EOF"

#!/bin/bash

REPOS="$1"

REV="$2"

export LANG=zh_CN.UTF-8

echo "Code Deployed at "$1" Committed revision "$2" ; `date "+%Y-%m-%d %H:%M:%S"`" >> /tmp/post-commit.log

/usr/bin/svn update --username harry --password harry /data/webdir/webgame >> /tmp/post-commit.log

EOF

 

chmod +x /data/svn/sinsvn/hooks/post-commit

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:https://www.cnblogs.com/bjx2020/p/8727641.html

赞(0) 打赏
转载请注明出处:服务器评测 » CentOS6.9下svn快速安装配置方法
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏