首先要說明一點的是Apache并不是必須安裝的,如果你只用在CentOS下本地實現(xiàn)版本控制的話,否則你至少要選擇一種服務(wù)器與SNV配合使用才能實現(xiàn)遠程版本控制,比較推崇使用Apache,好處實在太多了,比如多種身份驗證,可配置使用SSI加密等高級功能,當然,Apache也存在一些缺點,比如http本身是無狀態(tài)連接的,結(jié)果是導致連接速度相對要慢一點,不過本人在實際使用過程中感覺,只要你不是發(fā)燒極別的灰骨,基本可以忽略,呵呵.
CentOS官方有資料專門介紹如何配置SVN的,不過官方都是用yum方式安裝的,確實YUM有時候確實好用,不過對于初學者還是推薦自編譯安裝,在這一過程中出現(xiàn)的問題自已試著解決,其實是一件非常有效的學習方法,也是非常有趣的一件事.
CentOS官方資料: http://wiki.centos.org/HowTos/Subversion?highlight=(subversion)
安裝步驟:
1、安裝Apache
2、安裝subversion
3、創(chuàng)建版本庫
Apache安裝(原轉(zhuǎn)載的文章感覺這一塊講的不是很好,就加上了這一塊.):
十多年的南州晴隆網(wǎng)站建設(shè)經(jīng)驗,針對設(shè)計、前端、開發(fā)、售后、文案、推廣等六對一服務(wù),響應快,48小時及時工作處理。營銷型網(wǎng)站建設(shè)的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動調(diào)整南州晴隆建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計,從而大程度地提升瀏覽體驗。創(chuàng)新互聯(lián)從事“南州晴隆網(wǎng)站設(shè)計”,“南州晴隆網(wǎng)站推廣”以來,每個客戶項目都認真落實執(zhí)行。
1、下載:CentOS Apache
[root@localhost src]# chmod +x httpd-2.2.8.tar.gz
[root@localhost src]# tar -zxvf httpd-2.2.8.tar.gz
2)CentOS Apache設(shè)置編譯器的編譯參數(shù)
[root@localhost src]# cd httpd-2.2.8
[root@localhost httpd-2.2.8]# ./configure –prefix=/usr/local/apache2 –enable-module=so
3)CentOS Apache編譯和安裝:
[root@localhost httpd-2.2.8]# make && make install
#如果沒有錯誤的話,那么Apache就已經(jīng)安裝在/usr/local/apache2目錄中了
4、CentOS Apache啟動服務(wù):
[root@localhost httpd-2.2.8]# /usr/local/apache2/bin/apachectl start
5、CentOS Apache確定啟動狀:
[root@localhost apache2]# netstat -utl
tcp 0 0 *:http *:* LISTEN
#看到上面這行就表示你的Apache已經(jīng)啟動。
#用瀏覽器訪問,看到It works!,說明apache已經(jīng)安裝成功了,恭喜您!
一、準備好安裝包:
apr-1.3.6.tar.gz 下載地址:http://apr.apache.org/
apr-util-1.3.8.tar.gz
subversion-1.6.3.tar.gz 下載地址: http://subversion.tigris.org/
subversion-deps-1.6.3.tar.gz
httpd-2.2.9.tar.gz 下載地址:http://httpd.apache.org/
注意:apach的版本 與 subversion版本的兼容問題,官網(wǎng)都有介紹
二、開始安裝:把以上安裝包上傳至/usr/local目錄,cd /usr/local 進入該目錄
1、安裝apr
#解壓包
tar zxvf apr-1.3.6.tar.gz
cd apr-1.3.6
./configure
make && make install
2、安裝apr-util
tar zxvf apr-util-1.3.8.tar.gz
cd apr-util-1.3.8
./configure --with-apr=/usr/local/apr
make && make install
3、安裝 apache
tar zxvf httpd-2.2.9.tar.gz
cd httpd-2.2.9
./configure --prefix=/usr/local/apache2.2.9 --enable-dav --enable-so --enable-maintainer-mode --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr/bin/apu-1-config #--prefix表示把apache安裝在指定目錄
make && make install
4、安裝subversion
tar zxvf subversion-1.6.3.tar.gz
tar zxvf subversion-deps-1.6.3.tar.gz
cd subversion-1.6.3
./configure --prefix=/opt/svn --with-apxs=/usr/local/apache2.2.9/bin/apxs --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr
make && make install
至此,安裝基本完畢,再配置下就可以使用了
注意:因為這些安裝包需要gcc編譯,所以要確保linux上裝有g(shù)cc程序,否則是沒辦法進行安裝的
三、在apache中配置SVN
vi /usr/local/apache2.2.9/conf/httpd.conf
如果你看到如下兩句,說明安裝是成功的
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
如果有下面一句就用#注釋掉
#LoadModule foo_module modules/mod_foo.so
定義apache訪問svn配置:
<Location /svn>
DAV svn
# SVNPath /opt/svndata
SVNParentPath /opt/svndata
AuthzSVNAccessFile /opt/svn/conf/authz.conf
AuthType Basic
AuthName "Subversion repository"
AuthUserFile /opt/svn/conf/passwd.conf
Require valid-user
</Location>
四、配置svn
建立svn版本庫目錄
mkdir -p /opt/svndata/repos #可以多建版本庫目錄
建立svn版本庫
svnadmin create /opt/svndata/repos
mkdir -p /opt/svndata/repos #可以多建版本庫
建立本地訪問控制文件
/usr/local/apache2.2.9/bin/htpasswd -c /opt/svn/conf/passwd.conf username
然后輸入密碼即可,默認是MD5加密的
/usr/local/apache2.2.9/bin/htpasswd /opt/svn/conf/passwd.conf username1 #追加用戶
建立本地項目控制文件
touch /opt/svn/conf/authz.conf
本例authz.conf內(nèi)容為:
[groups]
#<groupname1>=<username1>,<username2>
admin=username
#[<versionLib>:projectName/directory]
#@<groupsname>=<authorities>
#<username>=<authorities>
[/]
@admin = rw #指定用戶組成員可以讀寫根目錄所有應用
[repos:/abc/aaa]
username1= rw #指定用戶username1可以讀寫:/abc/aaa目錄的文件
至此,整個安裝過程完成了!
五、測試連接
啟動apache
/usr/local/apache2.2.9/bin/apachectl start
打開瀏覽器,輸入http://192.168.1.107/svn/repos #本例服務(wù)器ip是192.168.1.107
使用剛才創(chuàng)建的權(quán)限用戶名與密碼登錄即可訪問
注意:在你上傳文件的時候可能會有如下權(quán)限不足的提示
Permission denied
svn: Commit failed (details follow):
svn: Can't create directory '/opt/svndata/repos/db/transactions/0-1.txn': Permission denied
這是因為apache在線程用戶沒有權(quán)限訪問svn的倉庫,兩者分別屬于不同的用戶者
本例apache屬于daemon擁有者,而svn倉庫屬于svn擁有者
解決方法:
chown -R daemon /opt/svndata/repos
chmod -R 755 /opt/svndata/repos
重啟下apache:
/usr/local/apache2.2.9/bin/apachectl stop
/usr/local/apache2.2.9/bin/apachectl start
3. “Could not open the requested SVN filesystem” errorcode=2
如果出現(xiàn)這個錯誤你就得看一下Apache的httpd.conf文件里面相關(guān)版本庫路徑是不是正確,請確保使用的是絕對路徑.
當前題目:CentOS下Apache+Subversion實現(xiàn)版本控制
網(wǎng)站路徑:http://www.rwnh.cn/article4/psjdie.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)建站、標簽優(yōu)化、云服務(wù)器、響應式網(wǎng)站、手機網(wǎng)站建設(shè)、移動網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)