1、介紹

Subversion是一個自由,開源的版本控制系統(tǒng),這個版本庫就像一個普通的文件服務器,不同的是,它可以記錄每一次文件和目錄的修改情況。這樣就可以很方面恢復到以前的版本,并可以查看數(shù)據(jù)更改細節(jié)。目前,Subversion已成為主流的開源代碼版本管理軟件之一,簡稱SVN。
2、SVN相關命令了解
svn:命令行客戶端
svnadmin:用來創(chuàng)建、調(diào)整或修復版本庫的工具
svnserve:svn服務程序
svndumpfilter:過濾svn版本庫轉(zhuǎn)儲數(shù)據(jù)流的工具
svnsync:svn數(shù)據(jù)同步工具,實現(xiàn)另外存一份相同的
svnlook:用來查看辦本科中不同的修訂版和事務
3、兩種運行模式
3.1 利用svnserve作為獨立服務運行,通過svn協(xié)議訪問
3.2 借助mod_dev_svn模塊,由apache服務運行(Web/DAV),通過http或https協(xié)議訪問。想了解此運行模式可以參考著篇博文:http://lizhenliang.blog.51cto.com/7876557/1340646
4、安裝與部署
對于Ubuntu來說,裝個SVN是件很容易的事,可以直接通過apt軟件包管理安裝。
4.1 直接安裝
# sudo apt-get install subversion
4.1 創(chuàng)建版本庫
# sudo mkdir –p /srv/svn/eweb
# sudo svnadmin create /srv/svn/eweb
4.2 了解版本庫
# 進入版本庫查看生成的相關文件
# ls /srv/svn/eweb
conf db format hooks locks README.txt
# 我們主要關心的是conf和db文件,conf文件夾下是存放主配置文件和用戶、權(quán)限位置,db文件夾是存放svn轉(zhuǎn)儲后的數(shù)據(jù)。
# ls /srv/svn/eweb/conf
authz passwd svnserve.conf
# authz文件是設置用戶權(quán)限,passwd文件是存儲用戶及密碼,svnserve.conf是主配置文件,先配置主配置文件。
4.3配置版本庫
# sudo vi svnserve.conf #將以下參數(shù)去掉注釋(要頂格)
[general]
anon-access = none #匿名訪問權(quán)限,默認read,none為不允許訪問
auth-access = write #認證用戶權(quán)限
password-db = passwd #用戶信息存放文件,默認在版本庫/conf下面,也可以絕對路徑指定位置
authz-db = authz
# sudo vi passwd #格式是用戶名=密碼,采用明文密碼
[users]
xiaoming = 123
zhangsan = 123
lisi = 123
zhangchengjie = zhangchengjie@!2016
# sudo vi authz
[groups] #定義組的用戶
manager = xiaoming
php = zhangsan,lisi,zhangchengjie
[eweb:/] #以根目錄起始的eweb版本庫manager組為讀寫權(quán)限
@manager = rw
[eweb:/media] #php組對eweb版本庫下media目錄為讀寫權(quán)限
@php = rw
4.4 啟動svn服務
# sudo svnserve -d -r /srv/svn --listen-port 21321
4.5關閉svn服務
#sudo pkill svnserve
5.創(chuàng)建web訪問目錄
#mkdir -p /var/www/eweb 我的web在這里根據(jù)自己機器環(huán)境定
5.1設置鉤子post-commit
#sudo cp /srv/svn/eweb/hooks/post-commit.tmpl /srv/svn/eweb/hooks/post-commit
#sudo vim /srv/svn/eweb/hooks/post-commit
添加如下內(nèi)容
export LANG="en_US.UTF-8"
SVN=/usr/bin/svn
WEB=/var/www/eweb
$SVN update $WEB --no-auth-cache --non-interactive --username zhangchengjie --password 'zhangchengjie@!2016'
chown -R www:www $WEB
chmod +x post-commit
從新啟動服務
#sudo pkill svnserve
#sudo svnserve -d -r /srv/svn --listen-port 21321
6.在終端下執(zhí)行如下命令
#svn co svn://127.0.0.1:21321/eweb /var/www/eweb --username zhangchengjie--password ‘zhangchengjie@!2016’
注意:127.0.0.1/eweb是svn倉庫名,/var/www/eweb是web目錄,如果在password中密碼使用特殊字符需要用單引號引用,否則會報錯bash不解析。
7.客戶端驗證,寫phpinfo文件通過瀏覽器訪問測試。


8.為了方便以后啟動關閉在sbin建立svn啟動腳本
vim /sbin/svn
1 #!/bin/bash
2 #autor:boy
3 #date:2016/7/28
4 # startup/stop/restart svn services
5
6 ####### start ##############
7
8 case "$1" in
9 start)
10 sudo svnserve -d -r /srv/svn --listen-port 21321
11 ;;
12
13 stop)
14 sudo pkill svnserve
15 ;;
16
17 *)
18 echo "Usage:start,stop"
19 ;;
20
21 esac
chmod 755 /sbin/svn
sudo /sbin/svn stop
sudo /sbin/svn start
創(chuàng)新互聯(lián)www.cdcxhl.cn,專業(yè)提供香港、美國云服務器,動態(tài)BGP最優(yōu)骨干路由自動選擇,持續(xù)穩(wěn)定高效的網(wǎng)絡助力業(yè)務部署。公司持有工信部辦法的idc、isp許可證, 機房獨有T級流量清洗系統(tǒng)配攻擊溯源,準確進行流量調(diào)度,確保服務器高可用性。佳節(jié)活動現(xiàn)已開啟,新人活動云服務器買多久送多久。
分享題目:Ubuntu14.04安裝svn設置post-commit鉤子-創(chuàng)新互聯(lián)
文章起源:http://chinadenli.net/article28/hjecp.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供做網(wǎng)站、App設計、外貿(mào)網(wǎng)站建設、網(wǎng)站改版、移動網(wǎng)站建設、App開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容