一 建立倉庫捏浊,配置svn
在Linux系統(tǒng)中搭建svn服務(wù)所需要用到的軟件叫做subversion,可以通過yum來進(jìn)行安裝,如圖
安裝好軟件后第一件事就是創(chuàng)建一個倉庫目錄
[root@server1 ~]# mkdir /svn
使用svn自帶命令建立倉庫
[root@server1 ~]# svnadmin create /svn
進(jìn)入該倉庫昆咽,可以看到該目錄下生成了一些目錄和文件
其他文件暫且不用理會,只需要對以下幾個文件做編輯
編輯svnserve.conf主配置文件屠升,對以下幾項修改如下
[general]
anon-access = none #取消匿名訪問
auth-access = write #授權(quán)用戶有可寫權(quán)限
password-db = passwd #指定用戶配置文件潮改,后面會用到
authz-db = authz #指定權(quán)限配置文件,后面會用到
編輯passwd文件腹暖,建立svn客戶端用戶以及密碼汇在,一行一個,這里建立了兩個用戶
編輯authz文件脏答,指定SVN倉庫目錄糕殉,這[/]代表根目錄,以及每個用戶的權(quán)限殖告,這里均為可讀可寫
啟動SVN服務(wù)阿蝶,-d表示后臺運(yùn)行svn服務(wù),-r是指定svn目錄黄绩;然后執(zhí)行了netstat檢查端口羡洁,默認(rèn)監(jiān)聽在3690端口上
在Windows使用SVN服務(wù)的話,需要下載一個TortoiseSVN客戶端軟件爽丹,安裝好軟件后在本地電腦創(chuàng)建一個工作目錄筑煮,右鍵該目錄選擇checkout,checkout就是把SVN服務(wù)器上的文件下載到本地工作目錄內(nèi)的操作
在對話框里輸入SVN服務(wù)器的地址以及需要存放文件的目錄粤蝎,然后點(diǎn)擊ok按鈕真仲,之后會要求輸入用戶名密碼,這個時候就輸入在passwd里設(shè)置的信息即可
登錄成功后便可以在該工作目錄里進(jìn)行編輯或創(chuàng)建文件初澎,操作完成后對該目錄右鍵秸应,選擇check commit提交,這個操作等于是上傳到SVN服務(wù)器
現(xiàn)在切換到Linux使用客戶端測試碑宴,使用Linux的SVN命令進(jìn)行checkout操作软啼,登錄后可以看到Windows上創(chuàng)建的文件已經(jīng)出現(xiàn)
svn checkout svn://192.168.36.100 /svnwork/ --username=tanglu --password=123456789
在Linux上創(chuàng)建一個文件后提交到SVN
[root@server1 svnwork]# svn add linux.txt #用add把新增的文件添加進(jìn)去
A linux.txt
[root@server1 svnwork]# svn commit -m "linux test" #commit正式提交
Adding linux.txt
Transmitting file data .
Committed revision 2. #版本號發(fā)生了變化
二,設(shè)置鉤子
我們知道要把svn的內(nèi)容更新到web目錄需要手動的svn up墓懂,但是今天筆者教你自動更新web目錄的方法焰宣,我們要在svn版本庫中配置鉤子來實(shí)現(xiàn),就是創(chuàng)建一個post-commit的配置文件捕仔,對其進(jìn)行簡單的配置匕积,簡簡單單的四步就可以實(shí)現(xiàn)Linux下SVN自動更新web目錄配置盈罐。
第一步:建立你的web程序目錄
mkdir /var/www/html/test
進(jìn)入/var/www/html/test目錄。
svn checkout svn://121.14.177.178:843/svntest 不重命名文件夾闪唆,直接在當(dāng)前目錄下檢出
svn checkout svn://121.14.177.178:843/svntest test 檢出文件并且重命名文件夾
第二步:在項目庫的 hooks/ 目錄下新建 post-commit 文件 【鉤子腳本】
添加腳本內(nèi)容如下:
!/bin/sh
SVN=/usr/bin/svn #這里配置的是svn安裝bin目錄下的svn文件
WEB=/var/www/html/test #要更新的目錄
$SVN update $WEB --username xxx --password xxx (此版本是linux下盅粪,windows下是.bat,寫法少有不同)
其中SVN=右邊改成 svn 命令位置
WEB=右邊改成你實(shí)際的web目錄
第三步:讓post-commit有執(zhí)行的權(quán)限 chmod 777 post-commit
第四步:這里就已經(jīng)完成了悄蕾,第四步就是測試了票顾。