在FreeBSD下安裝subversion

來源:互聯網
上載者:User

與PHP5的安裝一樣,本來是一件很簡單的事情。

cvsup -gL 2 -h cvsup.freebsd.org /usr/share/examples/cvsup/ports-supfile
cd /usr/ports/devel/subversion
make install clean

但 首先鬱悶的一點就是,裝上的不是目前的穩定版本:1.2.3,而是1.3.0-rc4(前兩天裝的時候還是rc2)。不知道為什麼,別的軟體,比如 Apache或PHP都有提供幾個版本的ports供選擇,偏偏svn沒有,只有最新版。後來在FreeBSD的FTP伺服器上找到了一個老一點的穩定版 本:subversion-1.2.1.tbz,可以按下面的方式安裝。

pkg_add subversion-1.2.1.tbz
(注意,兩個版本SVN所用到的apr-nothr-db4的版本是不一樣的,需要刪除重裝)

不 過就算這個也將就了,但是不論是用ports方式安裝最新版,還是用package方式安裝的老版本,都有同一個問題:當我按照文檔配置的時候,發現沒有 mod_dav_svn.so和mod_authz_svn.so這兩個模組。反覆重裝過好幾次,包括重裝Apache都沒有找到這兩個東東。後來 GOOGLE了一些資料,但是都是通過下載源碼安裝,而不是通過ports或package,這樣安裝的話管理起來就很不方便了。我不想這麼做。

還好經過PHP5的折磨之後,我找到了同樣的辦法來對付它。

cd /usr/ports/devel/subversion
vi Makefile
(在其中的CONFIGURE_ARGS=一項末尾增加--with-apxs後儲存退出)
make install clean

即可編譯產生那兩個Apache mod。

之後就可以用下面的配置來設定通過HTTP訪問SVN的Repositry。

  <Location /repo>
DAV svn
SVNParentPath /your_local_path/wwwrepo
AuthType Basic
AuthName "Subversion repository"
AuthUserFile /your_local_path/svn-auth-file
<LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
</LimitExcept>
</Location>

其中的svn-auth-file是用htpasswd產生的HTTP使用者資訊檔,具體參考SVN的相關文檔。上面配置為允許匿名checkout,但只有svn-auth-file中的使用者可以checkin。

按這樣配置以後,再用下面的方式建立repositry:

cd /your_local_path/wwwrepo
mkdir project1
svnadmin create --fs-type fsfs ./project1

注意一下,這樣配置以後,匿名checkout是沒有問題,但是checkin時出錯了,後來改為允許匿名checkin後才發現是許可權的問題。因為HTTP方式訪問檔案是以www使用者身份進行的,所以必須chmod一下。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.