版本控制器之SVN的安裝、配置、hooks配置及使用

1、subversion安裝(已安裝跳過)

yum install -y subversion
svn --version

2、創建版本庫(根目錄以:/var/svn/爲例,以:/var/svn/test爲某一個倉庫)

mkdir -p /var/svn/test
svnadmin create /var/svn/test
// 執行後可看到倉庫下有如下目錄
# conf          // 配置文件夾
# db            // 數據庫文件夾
# hooks         // 鉤子程序(觸發器)
# locks         // 文件鎖定相關
# format        // 
# README.txt    //

3、配置用戶權限

vi /var/svn/sPlant-C/conf/svnserve.conf
# anon-access = read     // 開啓並修改成anon-access = none(設置匿名不能訪問),如果是read則不會顯示日誌出來
# auth-access = write    // 開啓權限認證(去掉前面#)
# password-db = passwd   // 開啓用戶配置信息存放文件
# authz-db = authz       // 開啓存放授權信息文件
//修改後保存

vi /var/svn/sPlant-C/conf/passwd
// 賬號=密碼
test=123456
test2=123456
test3=123456
//修改後保存

vi /var/svn/sPlant-C/conf/authz
[groups]                 // 設置分組下的用戶
kaifa = test,test2
ceshi = test3
[/]                      // 指定目錄下給定的權限(修改爲/)
@kaifa = rw              // 按分組分(@表示分組)
@ceshi = r
//修改後保存

4、啓動SVN

svnserve -d -r /var/svn     // -d:聲明後臺啓動 -r:聲明版本庫根目錄
ps -ef | grep svn  

5、配置鉤子程序(hooks)

cd /var/svn/test/hooks/
vi post-commit
#!/bin/sh
REPOS="$1"
REV="$2"
export LANG=en_US.UTF-8    //設置編碼
WEB=/var/www/test         //web項目目錄
SVN=/usr/bin/svn                    //svn文件
user=test
password=123456
$SVN update $WEB --username $user --password $password --no-auth-cache    //設置登錄賬號密碼並不緩存(這種方式需要在$WEB目錄下checkout一下)
或者
$SVN co svn://localhost/sPlant-C $WEB --username $user --password $password1 --no-auth-cache    //可實現不需要再站點目錄下先checkout

切記post-commit需要給0777權限

配置完成之後把3690端口打開,然後正常使用即可,提交則將會自動同步到指定目錄下。

可以自己嘗試寫一下shell腳本可以更方便的使用svn

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章