linux 部署php svn,Linux服务器搭建svn环境方法详解
下面由Linux教程欄目給大家介紹Linux服務(wù)器搭建svn環(huán)境的方法,希望對(duì)需要的朋友也是幫助!
1、安裝svn服務(wù)端
sudo apt-get install subversion
2、安裝svn在ubuntu的本地客戶端
sudo apt-get install libapache2-svn
3、在根目錄home下面建一個(gè)文件夾svn,作為svn的根目錄
sudo mkdir /home/svn
4、建一個(gè)ubuntu的用戶組,和一個(gè)管理員sudo adduser svnuser(這里隨便取個(gè)用戶名)
sudo addgroup svngroup(這里是用戶組)
sudo addgroup svnuser svngroup(把用戶添加到用戶組)
5、接著在svn的根目錄下面創(chuàng)建一個(gè)svn的資源庫(kù),隨便取名,例如pro
sudo mkdir /home/svn/pro
6、把上面創(chuàng)建的用戶組的權(quán)限給到資源庫(kù)prosudo chown -R root:svngroup /home/svn/pro
sudo chmod -R g+rws /home/svn/pro
7、向資源庫(kù)里導(dǎo)入資源
sudo svnadmin create /home/svn/pro
8、進(jìn)入資源庫(kù)/home/svn/pro,可以看到有幾個(gè)文件夾,打開(kāi)conf文件夾svnserve.conf是svn的配置文件
passwd是svn的用戶文件
authz是svn的權(quán)限文件
9、先打開(kāi)svnserve.conf,將這些內(nèi)容前面的#去掉,并查看后面的內(nèi)容符合與否sudo gedit /home/svn/pro/conf/svnserve.conf
-----------------
[general]
anon-access = read(這個(gè)是匿名訪問(wèn)權(quán)限,只讀)
auth-access = write(這個(gè)是有權(quán)限操作,可寫)
password-db = passwd(這個(gè)是用戶文件的名稱,對(duì)應(yīng)8的passwd)
auth-db = authz(這個(gè)是用戶權(quán)限文件的名稱,對(duì)應(yīng)8的authz)
realm = my project(這個(gè)是訪問(wèn)的時(shí)候顯示的別名,隨便取名也可)
10、打開(kāi)passwd文件添加一個(gè)svn用戶,在[users]下面添加admin=123456sudo gedit /home/svn/pro/conf/passwd
admin是用戶名
123456是密碼
11、打開(kāi)authz文件,給剛才的用戶添加訪問(wèn)權(quán)限sudo gedit /home/svn/pro/conf/authz
[groups]
root = admin(定義一個(gè)權(quán)限組root,把a(bǔ)dmin用戶加入權(quán)限組root)
[/]
@root=rw(給root里的所有用戶,讀寫的權(quán)限)
* = r(給所有其他的匿名用戶,只讀的權(quán)限)
12、重啟svnsudo killall svnserve
sudo svnserve -d -r /home/svn
13、查看下本機(jī)ubuntu的ip地址
sudo ifconfig
可以看到192.168.***.***
14、然后在我們的window主機(jī)里可以局域網(wǎng)訪問(wèn)虛擬機(jī)的svn了,相信大家都有TortoiseSVN這個(gè)工具吧,在地址欄寫上svn://192.168.***.***/pro即可,用戶為上面建立的admin=123456,上傳幾個(gè)測(cè)試文件,比如index.php,寫點(diǎn)php代碼上傳上去;
15、這個(gè)時(shí)候php是無(wú)法解析到我們的svn里的資源index.php的,所以要把svn資源庫(kù)里的文
件給同步到ubuntu的apache+php訪問(wèn)目錄里去,在/var/www/html下面建一個(gè)文件夾sudo mkdir /var/www/html/bbs
sudo chmod -R 777 /var/www/html/bbs
sudo svn co svn://192.168.***.***/pro /var/www/html/bbs
16、然后我們可以在window主機(jī)上訪問(wèn)http://192.168.***.***/bbs看到index.php的內(nèi)容了,接著我們要讓apache自動(dòng)同步svn的資源庫(kù)變化后的內(nèi)容,才能達(dá)到我們的效果;
在/home/svn/pro/hooks目錄下有很多以tmpl結(jié)尾的文件,找到post-commit.tmpl,使用命令cd /home/svn/pro/hooks
sudo cp post-commit.tmpl post-commit
sudo chmod +x post-commit
sudo gedit post-commit
打開(kāi)文件后,看到最后幾行沒(méi)有加#的,給它們?nèi)考由?,因?yàn)檫@個(gè)是發(fā)郵件的例子,我們用不到,全部注銷掉,然后在最后一行加上這段代碼svn up /var/www/html/bbs --username=admin --password=123456
這樣只要我們?cè)趙indow上傳文件到svn的資源庫(kù),apache就會(huì)自動(dòng)把這些文件同步到我們的bbs文件夾下,然后就可以在地址欄訪問(wèn)到我們的項(xiàng)目了,搞定。另外,極個(gè)別,如果中文顯示有問(wèn)題的話,那么可以在svn up這個(gè)代碼前面加上export.UTF8,再試試。
總結(jié)
以上是生活随笔為你收集整理的linux 部署php svn,Linux服务器搭建svn环境方法详解的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: IE8升级到IE9
- 下一篇: Linux设备驱动模型3——platfo