Linux 下安裝subversion 詳細指南__Linux

來源:互聯網
上載者:User
1 下載相關的軟體 Apache-2.x    http://httpd.apache.org  下載原始碼包 Subersion     http://subversion.tigris.org/  下載原始碼包 本文中apache的版本為 Apache/2.2.4 (Unix) Subversion 版本:svnserve 1.4.3 (r23084) 2 安裝相關軟體 2.1 安裝apache  1)./configure –prefix=/usr/local/apache(安裝目錄)–enable-so –enable-proxy –enable-ssl –enable-vhost-alias –enable-mods-shared=most –enable-dav –enable-maintainer-mode 說明:其中—enable-dav 和—enable-maintainer-mode是為了能在apache下整合subversion才加進去的編譯參數。 –with-mpm=worker (這個參數,要詳細閱讀 apache 的 相關文檔來做決定用哪種 mpm ,待定) 2)make (編譯) 3)make install (安裝) 4)make clean(清理原始碼目錄) 3 建立倉庫 2.2 安裝subversion  1)配置 ./configure –prefix=/home/svn –enable-maintainer-mode –with-apr=/usr/local/apache2/bin/apr-1-config –with-apxs=/usr/local/apache2/bin/apxs –with-apr-util=/usr/local/apache2/bin/apu-1-config 其中:/usr/local/apache2為apache的安裝目錄,而不是原始碼目錄。 2)make 3)make install 4)make clean 倉庫的規劃一般是有一個倉庫,其中存放一個或者多重專案根目錄,在每個項目根目錄下面有 /trunk, /branches, and /tags 三個子目錄,或者另外的規劃。        /
   utils/
      calc/
         trunk/
         tags/
         branches/
      calendar/
         trunk/
         tags/
         branches/
      …
   office/
      spreadsheet/
         trunk/
         tags/
         branches/
      …
無論哪種規劃,但是都必須遵循的一個原則就是必須符合你的項目的設計。
3.2 建立倉庫  根據上面一節的規劃來建立你的倉庫。 1) 建立倉庫 $ svnadmin create /path/to/repos 觀察repos目錄結構 2) 根據倉庫規劃,建立臨時目錄: $mkdir tmpdir $cd tmpdir $mkdir boss (boss在這裡是project name) $mkdir boss/trunk $mkdir boss/tags $mkdir boss/branches 3) 添加上面建立的目錄結構到1)中建立的倉庫中去
svn import . file:///path/to/repos –message ‘Initial repository layout’
.:代表目前的目錄
file段:代表1)中建立的倉庫
4 subversion伺服器配置  Subversion 的伺服器運行方式分為兩種:http方式和tcp(以svnserve)方式。 4.1 http方式配置  結合apache的dav模組來是實現。 在apache的安裝目錄下面找到設定檔httpd.conf,修改設定檔。 <Location /svn> DAV svn SVNPath /home/svn/repos  </Location> 4.2 svn方式配置  Subversion以svnserve方式運行 1) standalone mode 直接運行:#svnserve –d運行 lsof -i :3690可以看到SVN伺服器已經在運行 2) xinetd mode在/etc/xinetd.d/下產生svnserve檔案,內容如下
service svnserve
{
disable = no
socket_type = stream
protocol = tcp
wait = no
user = root
server = /home/svn/bin/svnserve
server_args = -i
}
編輯 /etc/services 檔,加入底下兩行:
svnserve 3690/tcp # Subversion svnserve
svnserve 3690/udp # Subversion svnserve
重啟xinetd服務/usr/sbin/xinetd –restart 
運行 lsof -i :3690可以看到SVN伺服器已經在運行 5 伺服器配置 5.1 伺服器配置  Subversion的設定檔存放在$SVN_HOME/your repository/conf目錄下面,設定檔名:svnserve.conf。 1) 基本許可權管理 svnserve.conf的配置風格跟mysql的設定檔的風格相似。基於linux下的設定檔風格如下: [xxx] section:配置段 配置段下面的配置地區,一般是:變數 = 值 在svnserve.conf中[general]段,存取權限分為三種:read,write,none anon-access = none (對匿名使用者) auth-access = write    (授權使用者) 2) 基於svn自己許可權管理 Svn本身通過password-db = userfile和realm = my first實現了許可權管理。 Password-db是許可權檔案置放位置。 Realm是加密的key 許可權檔案的格式類似如下: [users] A=123456 (其中a為使用者名稱,123456為密碼) 3)基於svn+ssh許可權管理(略) 附錄:  命令列表
具體用法可參考 Subversion 命令參考手冊
Subversion 命令列用戶端: svn
svn add
svn cat
svn checkout
svn cleanup
svn commit
svn copy
svn delete
svn diff
svn export
svn help
svn import
svn info
svn list
svn log
svn merge
svn mkdir
svn move
svn propdel
svn propedit
svn propget
svn proplist
svn propset
svn resolved
svn revert
svn status
svn switch
svn update
Subversion 命令列服務端:
svnadmin list-unused-dblogs
svnadmin create
svnadmin dump
svnadmin help
svnadmin load
svnadmin lstxns
svnadmin recover
svnadmin rmtxns
svnadmin setlog
svnlook author
svnlook cat
svnlook changed
svnlook date
svnlook diff
svnlook dirs-changed
svnlook help
svnlook history
svnlook info
svnlook log
svnlook proplist
svnlook tree
svnlook youngest bash-3.2# ls -al /usr/local/lib/libexpat.* /usr/local/include/expat.h
-rw-r--r-- 1 root wheel 40339 Jan 14 02:43 /usr/local/include/expat.h
-rw-r--r-- 1 root wheel 444628 Jan 14 02:43 /usr/local/lib/libexpat.a
-rwxr-xr-x 1 root wheel 793 Jan 14 02:43 /usr/local/lib/libexpat.la
lrwxr-xr-x 1 root wheel 13 Jan 14 02:43
/usr/local/lib/libexpat.so -> libexpat.so.6
-rwxr-xr-x 1 root wheel 265921 Jan 14 02:43 /usr/local/lib/libexpat.so.6
bash-3.2#
 

聯繫我們

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