1, 通過命令安裝SVN服務(wù)器和apache:
$ sudo apt-get install subversion
$ sudo apt-get install libapache2-svn
$ sudo apt-get install apache2
無法發(fā)起與 8000:80 (0.0.31.64) 的連接 - connect (22: Invalid argument)
無法下載 http://cn.archive.Ubuntu.com/ubuntu/pool/main/a/apache2/apache2-mpm-worker_2.2.14-5ubuntu8.3_i386.deb 無法發(fā)起與 8000:80 (0.0.31.64) 的連接 - connect (22: Invalid argument)
無法下載 http://cn.archive.ubuntu.com/ubuntu/pool/main/a/apache2/apache2_2.2.14-5ubuntu8.3_i386.deb 無法發(fā)起與 8000:80 (0.0.31.64) 的連接 - connect (22: Invalid argument)
解決辦法: 發(fā)現(xiàn)實實際上訪問網(wǎng)址文件是能夠下載到的,于是手動將文件下載到,然后放到/var/cache/apt/archives目錄里, 重新輸入安裝命令即可.
2. 創(chuàng)建 SVN 倉庫
許多位置都可以放置 Subversion 文件倉庫,其中兩個最常用的是:/usr/local/svn 以及 /home/svn。為了在下面的描述中簡單明了,我們假設(shè)您的 Subversion 文件倉庫放在 /home/svn,并且你的項目名稱是簡單的“myproject”。
同樣的,也有許多常用的方式設(shè)置文件倉庫的訪問權(quán)限。然而,這也是安裝過程中最經(jīng)常出現(xiàn)錯誤的地方,因此我們會對此進行一個詳細(xì)說明。典型的情況 下,您應(yīng)該創(chuàng)建一個名為“Subversion”的組來擁有文件倉庫所在的目錄。下面是一個快速的操作說明,有關(guān)內(nèi)容請參考相關(guān)文檔的詳細(xì)說明:
在 Ubuntu 菜單上選擇“系統(tǒng)->系統(tǒng)管理->用戶和組”;
切換到“組”標(biāo)簽;
點擊“添加組”按鈕;組名為“subversion”;
將您自己和“www-data”(Apache 用戶)加入組成員中;
點擊“OK”以確認(rèn)修改,關(guān)閉該程序。
您需要注銷然后再登錄以便您能夠成為 subversion 組的一員,www.linuxidc.com然后就可以執(zhí)行簽入文件(Check in,也稱提交文件)的操作了。
現(xiàn)在執(zhí)行下面的命令
$ sudo mkdir /home/svn
$ cd /home/svn
$ sudo mkdir myproject
$ sudo chown -R root:subversion myproject
$ sudo chmod -R g+rws myproject
最后的一條命令賦予組成員對所有新加入文件倉庫的文件擁有相應(yīng)的權(quán)限。
下面的命令用于創(chuàng)建 SVN 文件倉庫:
$ sudo svnadmin create /home/svn/myproject
3, 配置通過 WebDAV 協(xié)議訪問(http://)
要通過 WebDAV 協(xié)議訪問 SVN 文件倉庫,您必須配置您的 Apache 2 Web 服務(wù)器。您必須加入下面的代碼片段到您的 /etc/apach2/apache2.conf 中:
<Location /svn>
DAV svn
SVNPath /home/svn/myproject
AuthType Basic
AuthName "myproject subversion repository"
AuthUserFile /etc/subversion/passwd
Require valid-user
</Location>
4, 啟動apache,
出現(xiàn)錯誤提示:
apache2: bad user name ${APACHE_RUN_USER}
解決辦法:
1. 打開apache2的配置文件
#sudo gedit /etc/apache2/apache2.conf
(本來應(yīng)該改envvars這個文件的,但是不知道為什么修改了不起作用)
2. 修改默認(rèn)的用戶名和組
找到 ${APACHE_RUN_USER} 和 ${APACHE_RUN_GROUP}
替換為自己的用戶名和組,然后保存退出。
出現(xiàn)錯誤提示:
httpd.exe: Could not reliably determine the server's fully qualified domain name, using 192.168.1.111 for ServerName
解決辦法:
因為DNS沒配置好. 如果不想配置DNS, 就在httpd.conf , 在最前加入 ServerName localhost:80 即可.
出現(xiàn)錯誤提示:
端口被占用
解決辦法:
netstat -lnp|grep 80, 獲得進程ID
kill ID
當(dāng)您添加了上面的內(nèi)容,您必須重新起動 Apache 2 Web 服務(wù)器,請輸入下面的命令:
sudo /etc/init.d/apache2 restart
5, 通過自帶協(xié)議訪問(svn://)
當(dāng)您創(chuàng)建了 SVN 文件倉庫,您可以修改 /home/svn/myproject/conf/svnserve.conf 來配置其訪問控制。
例如,您可以取消下面的注釋符號來設(shè)置授權(quán)機制:
# [general]
# password-db = passwd
現(xiàn)在,您可以在“passwd”文件中維護用戶清單。編輯同一目錄下“passwd”文件,添加新用戶。語法如下:
username = password
現(xiàn)在,您可以在本地或者遠(yuǎn)程通過 svn:// 當(dāng)文 SVN 了,您可以使用“svnserve”來運行 svnserver,語法如下:
$ svnserve -d --foreground -r /home/sv
訪問時出現(xiàn)錯誤:
svn: /home/svn/myproject/conf/svnserve.conf:20: Option expected
password-db = passwd這句不能有空格.
6, 創(chuàng)建第一個項目:
svn import TescSvn/ svn://username@localhost/myproject -m "initial import"
TescSvn是本地目錄,其中必需包含trunk, branches,tags三個目錄, trunk中放文件. 其他為空, "svn://username@localhost/myproject"是服務(wù)器的目錄和用戶名.
然后創(chuàng)建用戶
接下來,您需要創(chuàng)建 /etc/subversion/passwd 文件,該文件包含了用戶授權(quán)的詳細(xì)信息。要添加用戶,您可以執(zhí)行下面的命令:
htpasswd -c /etc/subversion/passwd user_name
它會提示您輸入密碼,當(dāng)您輸入了密碼,該用戶就建立了.
取出項目:
svn://localhost/myproject /home/hueylu/work/TescSvn2/ --username hueylu --password ****** --non-interactive
8, 推薦一個界面的SVN客戶端
esvnsudo apt-get install esvn
以上配置在ubuntu10.04通過