下面由Linux教學欄位來介紹Linux伺服器搭建svn環境的方法,希望對需要的朋友也是幫忙!
1、安裝svn服務端
sudo apt-get install subversion
2、安裝svn在ubuntu的本機客戶端
sudo apt-get install libapache2-svn
3、在根目錄home下面建一個資料夾svn,作為svn的根目錄
sudo mkdir /home/svn
4、建立一個ubuntu的使用者群組,和一個管理員
sudo adduser svnuser(这里随便取个用户名) sudo addgroup svngroup(这里是用户组) sudo addgroup svnuser svngroup(把用户添加到用户组)
5、接著在svn的根目錄下面建立一個svn的資源庫,隨便取名,例如pro
sudo mkdir /home/svn/pro
6、把上面建立的使用者群組的權限給到資源庫pro
sudo chown -R root:svngroup /home/svn/pro sudo chmod -R g+rws /home/svn/pro
7、向資源庫裡導入資源
sudo svnadmin create /home/svn/pro
#8、進入資源庫/home/svn/pro
,可以看到有幾個資料夾,開啟conf資料夾
svnserve.conf是svn的配置文件 passwd是svn的用户文件 authz是svn的权限文件
9、先開啟svnserve.conf
#,將這些內容前面的#去掉,並查看後面的內容符合與否
sudo gedit /home/svn/pro/conf/svnserve.conf ----------------- [general] anon-access = read(这个是匿名访问权限,只读) auth-access = write(这个是有权限操作,可写) password-db = passwd(这个是用户文件的名称,对应8的passwd) auth-db = authz(这个是用户权限文件的名称,对应8的authz) realm = my project(这个是访问的时候显示的别名,随便取名也可)
10、開啟passwd
檔案新增一個 #svn
用戶,在[users]
下面加上admin=123456
sudo gedit /home/svn/pro/conf/passwd admin是用户名 123456是密码
11、打開authz
文件,給剛才的使用者新增存取權限
sudo gedit /home/svn/pro/conf/authz [groups] root = admin(定义一个权限组root,把admin用户加入权限组root) [/] @root=rw(给root里的所有用户,读写的权限) * = r(给所有其他的匿名用户,只读的权限)
#12、重新啟動svn
sudo killall svnserve sudo svnserve -d -r /home/svn
13、檢視下本機ubuntu的ip位址
sudo ifconfig
可以看到192.168.***.***
14、然後在我們的window主機裡可以區域網路存取虛擬機器的svn了,相信大家都有TortoiseSVN
這個工具吧,在網址列寫上svn://192.168.*** .***/pro
即可,使用者為上面建立的admin=123456
,上傳幾個測試文件,例如index.php,寫點php程式碼上傳上去;
15、這時候php是無法解析到我們的svn裡的資源index.php的,所以要把svn資源庫裡的文
件給同步到ubuntu的apache php存取目錄裡去,在/var/www/html下面建一個資料夾
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主機上存取http://192.168.* **.***/bbs
看到index.php的內容了,接著我們要讓apache自動同步svn的資源庫變更後的內容,才能達到我們的效果;
在/home/svn/pro/hooks
目錄下有很多以tmpl結尾的文件,找到post-commit.tmpl
#,使用指令
cd /home/svn/pro/hooks sudo cp post-commit.tmpl post-commit sudo chmod +x post-commit sudo gedit post-commit
開啟檔案後,看到最後幾行沒有加#的,給它們全部加上#,因為這個是發郵件的例子,我們用不到,全部註銷掉,然後在最後一行加上這段程式碼
svn up /var/www/html/bbs --username=admin --password=123456
這樣只要我們在window上傳檔案到svn的資源庫,apache就會自動把這些檔案同步到我們的bbs資料夾下,然後就可以在網址列訪問到我們的專案了,搞定。另外,極個別,如果中文顯示有問題的話,那麼可以在svn up
這個程式碼前面加上export.UTF8
,再試試。
以上是Linux伺服器搭建svn環境方法詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!