linux下單獨(不附帶apache)配置subversion方法:

安裝過程:

1.軟件下載。我下載的是 subversion-1.6.6.tar.gz 和 subversion-deps-1.6.6.tar.gz ,前者是 svn1.6.6 的源文件,后者是編譯時可能需要用到的包。軟件下載地址如下

http://subversion.tigris.org/

2.解壓兩個文件進入同一個目錄

分別執行命令:tar xfvz subversion-1.6.6.tar.gz和tar xfvz subversion-deps-1.6.6.tar.gz

3.進入解壓子目錄: cd subversion-1.6.6

4.執行 ./configure --prefix=/usr/local/svn 進行配置設定并指明安裝目錄.

5.執行 make 編譯

6.執行 make install 安裝.

7.添加環境變量: vi /etc/profile 在文件最后加入: export SVNPATH=$PATH:/usr/local/svn/bin

8.運行:svnserve -d啟動svn

9. 測試SVN是否安裝成功,執行: svnserve --version 如果顯示版本信息, 則安裝成功.

10.由于svn的端口號為3690,可以查看一下svn占用的端口號命令為:netstat -nl|grep 3690

軟件配置:

1.建立版本庫

進入到svn的安裝目錄/usr/local/svn/bin下,首先建立一個文件夾:mkdir -p /usr/local/snvdata/然后輸入命令./svnadmin create /usr/local/svndata/repos就建立了一個版本庫了。

2.進入/usr/local/svndata/repos/conf就可以看到svn的配置文件,首先配置svnserve.conf

配置如下:

anon-access = none

auth-access = write

password-db = passwd

realm = My First Repository

其它配置文件一律注釋掉,特別是### authz-db = authz,因為如果不是需求組權限配置的話千萬不要配置這個,會有預料不到的錯誤

之后配置passwd文件

[users]

用戶名 = 密碼

配置時可以采用 vi passwd 打開文件之后,輸入i可以進行修改,改完之后按住ESC退出并輸入:wq

即可保存修改

3.查看svn進程是否已經啟動,ps -ef|grep svn        然后輸入 kill 進程號 殺死該進程,之后到/usr/local/svn/bin目錄下輸入命令:
svnserve -d -r /opt/svndata/repos --listen-host=218.241.157.42

svn:導入

svn import /usr/local/dooynn/ svn://218.241.157.42/repos/dooynn -m "test import"

查看
svn list svn://218.241.157.42/repos

但是外網竟然連不上來,怎么辦?

No connection could be made because the target machine actively refused it.  
svn: Can't connect to host '218.241.157.42': No connection could be made because the target machine actively refused it.

看樣子是防火墻的問題,首先關閉防火墻試試。

service iptables stop

發現還是不行,關閉SeLinux試試。
vi /etc/selinux/config

SELINUX=disabled

郁悶,還不行。

telnet 218.241.157.42 3690
結果連不上,23端口是可以,80端口在apache啟動后也是可以的,說明svn服務器沒有安裝好?

改成23端口,結果可以,暈,怎么回事,還是防火墻的問題?
但是配置都沒有任何問題啊。

今天才知道,原來是公司瘋了目的端口地址,氣死了。總以為我可以訪問apche等其他公司的svn服務器,我自己的肯定沒事,沒想到啊。他們應該都是svn+apache的形式,看來大家以后只能用80,22,23,25這些端口了。