一、小公司開發送出代碼上線圖
<a href="http://s3.51cto.com/wyfs02/M01/6E/93/wKiom1V_5Cah5j84AAar7_1zXcQ373.jpg" target="_blank"></a>
二、鈎子腳本
鈎子腳本隻幹兩件事,1是svn項目的内容同步到本地的/data/www目錄下;2通過rsync把/data/www的内容推到/tmp上,由于是在本機測試故放在/tmp下,如果線上上生産,會寫上對方面web伺服器IP位址:某個目錄下
[root@svn hooks]# pwd
/application/svndata/sadoc/hooks
[root@svn hooks]# ll
-rw-r--r-- 1 root root 1977 6月 15 16:42 post-commit.tmpl
-rw-r--r-- 1 root root 1638 6月 15 16:42 post-lock.tmpl
-rw-r--r-- 1 root root 2289 6月 15 16:42 post-revprop-change.tmpl
-rw-r--r-- 1 root root 1567 6月 15 16:42 post-unlock.tmpl
-rw-r--r-- 1 root root 3426 6月 15 16:42 pre-commit.tmpl
-rw-r--r-- 1 root root 2410 6月 15 16:42 pre-lock.tmpl
-rw-r--r-- 1 root root 2786 6月 15 16:42 pre-revprop-change.tmpl
-rw-r--r-- 1 root root 2100 6月 15 16:42 pre-unlock.tmpl
-rw-r--r-- 1 root root 2780 6月 15 16:42 start-commit.tmpl
[root@svn hooks]# cp post-commit post-commit.bak
[root@svn hooks]# vim post-commit
PEPOS="$1"
REV="$2"
export LANG=en
#update content from svn
SVN=/usr/bin/svn
$SVN update --useranme qingyun --password 168 /data/www
if [ $? -eq 0 ]
then
/usr/bin/rsync -az --delete /data/www /tmp/
fi
REPOS="$1"
[root@svn hooks]# # mkdir -pv /data/www
把svn項目的内容同步到本地的/data/www目錄下
[root@svn hooks]# svn co svn://192.168.1.220/sadoc --username qingyun --password 168 /data/www
A /data/www/trunk
A /data/www/trunk/test
A /data/www/trunk/test/tom.rar
A /data/www/trunk/test/tom.txt
A /data/www/lession001.txt
A /data/www/lession002.txt
A /data/www/branch
A /data/www/tags
三、測試
1、用戶端D:\oldboy\trunk下建個檔案love
<a href="http://s3.51cto.com/wyfs02/M01/6E/90/wKioL1V_7nbzA9rbAAI7BtUroq0071.jpg" target="_blank"></a>
<a href="http://s3.51cto.com/wyfs02/M00/6E/90/wKioL1V_7suBLPNpAAMb3ltszNM888.jpg" target="_blank"></a>
<a href="http://s3.51cto.com/wyfs02/M01/6E/90/wKioL1V_7wnAkBbVAAFjQCpXHJQ446.jpg" target="_blank"></a>
2、回到SVN伺服器
[root@svn hooks]# tree /data/www
/data/www
├── branch
├── lession001.txt
├── lession002.txt
├── tags
└── trunk
└── test
├── 123.txt
├── jerrry.txt
├── love.txt
└── tom.txt
[root@svn hooks]# tree /tmp
/tmp
├── 0452.log
├── 04S.log
├── 0644.log
├── 1224.log
├── 1548.log
├── lost+found
└── www
├── branch
├── lession001.txt
├── lession002.txt
├── tags
└── trunk
└── test
├── 123.txt
├── jerrry.txt
├── love.txt
└── tom.txt
本文轉自 zouqingyun 51CTO部落格,原文連結:http://blog.51cto.com/zouqingyun/1662432,如需轉載請自行聯系原作者