1、安裝 SVN 服務端
Subversion 是一個版本控制系統,相對於的 RCS 、 CVS ,采用了分支管理系統,它的設計目標就是取代 CVS 。
yum install -y subversion
2、創建 SVN 版本庫
2.1創建項目版本庫
mkdir -p /data/svn/test
svnadmin create /data/svn/test
3、配置 SVN 信息
配置文件簡介
版本庫中的配置目錄
conf 有三個文件:
- authz 是權限控制文件
- passwd 是帳號密碼文件
- svnserve.conf 是SVN服務綜合配置文件
3.1配置權限配置文件 authz
編輯 authz ,內容參考如下:
[groups] #用戶組 admin = ,test #用戶組所對應的用戶 [/] #庫目錄權限 @admin = rw #用戶組權限 *=r #非用戶組權限
3.2配置賬號密碼文件 passwd
編輯 passwd ,內容參考如下:
[users] # harry = harryssecret # sally = sallyssecret test = 123456
3.3配置 SVN 服務綜合配置文件 svnserve.conf
編輯 svnserve.conf ,內容參考如下:
[general] # force-username-case = none # 匿名訪問的權限 可以是read、write,none,默認為read anon-access = none #使授權用戶有寫權限 auth-access = write #密碼數據庫的路徑 password-db = passwd #訪問控制文件 authz-db = authz #認證命名空間,SVN會在認證提示里顯示,並且作為憑證緩存的關鍵字 realm = /data/svn/test [sasl]
4、啟動 SVN 服務
4.1啟動 SVN
svnserve -d -r /data/svn
4.2checkout SVN項目
mkdir -p /data/workspace/test svn co svn://127.0.0.1/test /data/workspace/test--username test--password 123456 --force --no-auth-cache
4.3提交文件到 SVN 服務器
從本地提交文件到 SVN 服務器,其中
root
密碼為
/data/svn/myproject/conf/passwd
文件存儲的密碼
cd /data/workspace/test echo test >> test.txt svn add test.txt svn commit test.txt -m 'test'
提交成功后可以通過如下命令從本地項目刪除文件
cd /data/workspace/test
rm -rf test.txt
刪除后可以通過 SVN 服務器恢復
cd /data/workspace/test
svn update
注:如果在外網更新不了,請查看服務器是否開放3690,svn服務器默認使用3690
svn鈎子(hooks)自動部署代碼到test目錄
進入/data/svn/test/hooks
復制一份 post-commit
cp post-commit.tmpl post-commit
編輯post-commit
#!/bin/sh REPOS="$1" REV="$2" DIR="/data/workspace/test"
export LANG=en_US.UTF-8
CURDATE='date'
echo "Code Deployed By at $CURDATE,$REPOS,$REV" >> /svn/code_deploy.log
svn update $DIR --username test--password 123456
最后post-commit添加執行權限
chmod +x post-commit
掃二維碼,關注更多PHP資訊!