溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

CentOS6.9中如何快速安裝配置svn

發(fā)布時間:2021-06-16 09:32:51 來源:億速云 閱讀:160 作者:小新 欄目:服務(wù)器

這篇文章主要為大家展示了“CentOS6.9中如何快速安裝配置svn”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“CentOS6.9中如何快速安裝配置svn”這篇文章吧。

環(huán)境介紹:

操作系統(tǒng):CentOS release 6.9 (Final)
192.168.65.130 (svn服務(wù)器)
192.168.65.129 (svn客戶端)

一、svn安裝檢查(在兩臺上都執(zhí)行)

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

二、創(chuàng)建版本庫文件夾(僅在130上操作)

mkdir -p /data/svn/sinsvn
#創(chuàng)建版本庫
svnadmin create /data/svn/sinsvn
mkdir -p /data/www/sinsvn

三、主要操作

#導(dǎo)入所需管理的項目到版本庫repository中
svn import /data/www/sinsvn/ file:///data/svn/sinsvn -m "svn first test"
#檢查是否導(dǎo)入成功
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 服務(wù)
svnserve -d -r /data/svn/

# 查看
ps -ef|grep svnserve|grep -v 'grep'
netstat -anltp|grep 3690

四、測試

# 測試,在另外一臺機(jī)器上操作(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'


############### 這里假設(shè)130的機(jī)器上有個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 # 可以查看到更新后的結(jié)果

五、腳本定制更新

# 定時更新腳本(針對整個目錄自動更新的腳本,被動模式)
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計劃任務(wù)中


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

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

# 自動更新腳本(針對版本號觸發(fā)式更新)
#svn 目錄:/data/svn/sinsvn
#站點(diǎn)目錄:/data/webdir/webgame

#實現(xiàn):
#1.找到svn項目的hooks目錄,這里是/data/svn/sinsvn/hooks。目錄中默認(rèn)會幾個對應(yīng)操作的鉤子模板,我們需要創(chuàng)建一個post-commit的文件。
find /data/svn/sinsvn/ -name hooks

#2.新建post-commit,內(nèi)容如下
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

以上是“CentOS6.9中如何快速安裝配置svn”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI