設置SVN hooks實現自動發佈

# CentOS下安裝SVN
yum -y install subversion 
svnserve --version
cd /home/
mkdir svn
cd svn/

/usr/bin/svnserve -d -r /home/svn/        # 啓動SVN服務
svnadmin create /home/svn/test/        # 建立版本倉庫

vi /etc/rc.local
# 新增如下內容
/usr/bin/svnserve -d -r /home/svn/

# 先設置 passwd ,並文件移動到 /home/svn 下
[users]
funsion=123
# 語法:用戶名=密碼

# 再設置權限authz ,並文件移動到 /home/svn 下
[/]
funsion=rw
# 意思是funsion用戶對全部的目錄有讀寫權限,固然也能夠限定。

最後設定 snvserv.conf
anon-access = none # 使非受權用戶沒法訪問
auth-access = write # 使受權用戶有寫權限
password-db = /home/svn/passwd
authz-db = /home/svn/authz   # 訪問控制文件
realm = /home/svn/test    # 認證命名空間,subversion會在認證提示裏顯示,而且做爲憑證緩存的關鍵字。
# 採用默認配置. 以上語句都必須頂格寫, 左側不能留空格, 不然會出錯.

# 設置 SVN hooks(SVN自動發佈)

cd /home/svn/test/hooks/
cp post-commit.tmpl post-commit

# 給post-commit文件增長執行權限
chmod -R 744 post-commit

# 修改post-commit文件,加入所需的鉤子
# 好比我使用的是

#!/bin/sh
export LANG = en_US.UTF-8
REPOS="$1"
REV="$2"
/usr/bin/svn update --username funsion --password 567890 /home/wwwroot/www.test.com
/bin/chown -R www:www /home/wwwroot/www.test.com
相關文章
相關標籤/搜索