配置Apache svn 伺服器

來源:互聯網
上載者:User

本文參考了這篇文章http://svnbook.red-bean.com/en/1.0/ch06s04.html
概要:
  • svn (subversion) 是一種開源免費的軟體項目源檔案版本管理工具
  • svn 伺服器是集中管理 svn 容器,並允許 svn 用戶端通過http或者遠程登入訪問 svn 容器的伺服器。 
  • 本文介紹在 Mac OS 或者 Cent OS 下建立一個允許用戶端通過 http 訪問的 svn 伺服器的方法。

環境:
  • Apache:
  • OS: 

    Mac OS X 10.6 Snow Leopard

    Mac OS X 10.7 Lion

    Cent OS 5.6 Final

預備知識
Mac OS X 對 svn 的相容:
  • 預設安裝了如下 svn 命令列工具


  • 內建的Apache伺服器中預裝了 svn 需要的模組 mod_dav.so 和 mod_dav_svn.so  


    其中 mod_dav.so 預設載入,mod_dav_svn.so 需要手動設定載入。後述。

  • 內建 Apache 伺服器安裝路徑:

     /etc/apache2/

關於 WebDAV/DeltaV 協議
  • 這是兩個應用程式層協議,提供svn需要的遠程認證,metadata管理,版本管理和組態管理功能。
  • Apache 2.0 開始通過mod_dav模組支援這兩個協議。

關於在 Mac OS X 內建的 Apache 中安裝模組
  • 內建的 Apache 存放模組檔案的位置(和通常安裝的Apache不同)

    /usr/libexec/apache2/
  • 本次需要的模組已經存在,所以未進行另外安裝。

配置http訪問
建立svn容器 
  • 在自己的使用者檔案夾下建立一個容器 /Users/nutcracker/repository

     

配置 Apache
  • CentOS :
    sudo yum -y install httpd subversion mod_dav_svn

    無需手動編輯Apache設定檔。

  • Mac OS :

    編輯 /etc/apache2/httpd.conf,使 Apache 啟動時載入 mod_dav_svn 模組


    mod_dav_svn 載入指令要放在mod_dav載入指令的後面。

    注意需要用root許可權編輯,否則無法儲存。

    sudo vim /etc/apache2/httpd.conf 

  • 在 httpd.conf 中添加下面指令來告訴 Apache 將所有路徑部分以/repos開頭的URL交給位於SVNPath下的 DAV provider 來處理。SVNPath 為前面建立的容器的路徑。

    <Location /repos>

            DAV svn

            SVNPath /Users/nutcracker/repository

    </Location>

  • 重啟 Apache (Mac OS X 有自己的啟動方法,參照以前的文章) 
     

測試方法
  • 建立測試專案 
  • 添加到容器

  • 瀏覽器訪問


  • checkout 


  • 配置成功 

Cent OS 和 Lion 下遇到的問題

  • errcode="13" Could not open the requested SVN filesystem
  • 原因是將容器建立在/home/nutcracker/repos,apache沒有存取權限。
  • Snow Leopard下將repos檔案夾chmod到777就可以訪問,而CentOS和Lion不行,chown到apache.apache也不行。原因不明。
  • 將容器建立在 /var/www/svn/ 下即可解決。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.