CentOS下SVN安裝及配置圖解教程


下載相關軟件

wget http://subversion.tigris.org/downloads/subversion-1.6.6.tar.gz

wget http://subversion.tigris.org/downloads/subversion-deps-1.6.6.tar.gz

編輯

1、查看是否安裝了svn工具
命令:rpm -qa | grep subversion
如果服務器已經安裝了則不需要進行安裝,如果沒有安裝可以進行全新的安裝
2、首先檢測系統有沒有安裝SSL:
find / -name opensslv.h
如果找不到,就執行如下命令進行安裝:
yum install openssl
yum install openssl-devel
安裝之后用find / -name opensslv.h命令找到opensslv.h所在的目錄,即下列–with-openssl=后面的路徑,
3、解壓svn安裝文件
subversion-1.6.6.tar.gz
subversion-deps-1.6.6.tar.gz
命令如下:

tar zxvf subversion-1.6.6.tar.gz
tar zxvf subversion-deps-1.6.6.tar.gz
tar 為解壓命令,zxvf為tar命令的參數,用於解壓tar.gz格式壓縮的文件。
解壓后生成 subversion-1.6.6 子目錄,兩個壓縮包解壓后都會自動放到此目錄下,不用手動更改。
進入解壓子目錄 cd subversion-1.6.6 進行編譯。
 
./configure --prefix=/usr/local/svn --with-openssl=/usr/include/openssl
--without-berkeley-db
 
后面以svnserve方式運行,所以不加apache編譯參數。以fsfs格式存儲版本庫,不編譯berkeley-db
如果編譯時報如下錯誤:
no acceptable C compiler found in $PATH
說明沒有gcc庫,使用如下命令安裝gcc后再編譯:
yum -y install gcc
如果最后出現下面WARNING,我們直接忽略即可,因為不使用BDB存儲。de>
de style="padding: 0px; margin: 0px; height: auto !important; direction: ltr !important; display: inline !important;" >make
make install
如果 make install 出現下面錯誤:
/home/upload/subversion-1.6.6/subversion/svnversion/.libs/lt-svnversion: error while loading shared libraries: libiconv.so.2: cannot open shared object file: No such file or directory
make: *** [revision-install] Error 127
解決辦法:
1、編輯/etc/ld.so.conf文件
vi /etc/ld.so.conf
添加下面一行代碼
/usr/local/lib
2、保存后運行ldconfig:
/sbin/ldconfig
注:ld.so.conf和ldconfig用於維護系統動態鏈接庫。
3、然后再安裝
make && make install
測試是否安裝成功
 
4、為了方便下操作,把svn相關的命令添加到環境變量中:
echo “export PATH=$PATH:/usr/local/svn/bin/” >> /etc/profile
source /etc/profile

配置svn

1、建立SVN的根目錄
mkdir -p /opt/svn/
2、建立一個產品倉庫
mkdir -p /opt/svn/tshop/
svnadmin create /opt/svn/tshop/
如果你們的研發中心有多個產品組,每個產品組可以建立一個SVN倉庫
3、修改版本配置庫文件
vi /opt/svn/tshop/conf/svnserve.conf
修改后的文件內容如下:

auth-access = write

password-db = passwd

authz-db = authz

realm = tshop

對用戶配置文件的修改是立即生效的,不必重啟svn。
4、開始設置passwd用戶賬號信息

vi /data/svn/repos/conf/passwd

[users]

# harry = harryssecret

# sally = sallyssecret

###===========下面是我添加的用戶信息========#######

iitshare = password1

itblood = password2

 

5、開始設置authz. 用戶訪問權限
vi /data/svn/repos/conf/authz
修改完之后的內容如下:
 
###-------------------- 下面我新加的------------------------###
 
devteam = iitshare, itblood #devteam 項目組包括兩個用戶iitshare,itblood
[/]
iitshare = rw
itblood =
[tshop:/tb2c]
@devteam= rw
itblood =
[tshop:/tb2b2c]
@devteam= rw
itblood = r

7、建立啟動svn的用戶
useradd svn
根據提示,為用戶svn設置密碼
允許用戶svn訪問版本庫:
chown -R svn:svn /opt/svn
8、啟動svn:
方式一:svnserve -d -r /opt/svn/ #默認的啟動端口號為3690
方式二:su – svn -c “svnserve -d –listen-port 9999 -r /opt/svn/”
其中:
su – svn表示以用戶svn的身份啟動svn;
-d表示以daemon方式(后台運行)運行;
–listen-port 9999表示使用9999端口,可以換成你需要的端口。但注意,使用1024以下的端口需要root權限;
-r /opt/svn 指定根目錄是/opt/svn。
9、檢查是否啟動
netstat -tunlp | grep svn
如果顯示以下信息說明啟動成功
tcp 0 0 0.0.0.0:9999 0.0.0.0:* LISTEN 10973/svnserve
10、將svn加入到開機啟動
編輯rc.local文件:vi /etc/rc.d/rc.local
加入如下啟動命令:
/usr/local/svn/bin/svnserve -d –listen-port 9999 -r /opt/svn
11、如果想停止svn,則使用如下命令:
killall svnserve
12、如果想將svn作為服務:
在/etc/rc.d/init.d/目錄下新建名為svn的文件
並設置權限為755:chmod 755 /etc/rc.d/init.d/svn
編輯svn文件:vi /etc/rc.d/init.d/svn, 在里面添加如下代碼:

####

#!/bin/bash

# build thisfile in /etc/rc.d/init.d/svn

# chmod 755/etc/rc.d/init.d/svn

# centos下可以用如下命令管理svn: service svn start(restart/stop)

SVN_HOME=/opt/svn

if[ ! -f "/usr/local/svn/bin/svnserve"]

then

echo "svnserver startup: cannot start"

exit

fi

case"$1"in

start)

echo "Starting svnserve..."

/usr/local/svn/bin/svnserve -d --listen-port 9999-r $SVN_HOME

echo "Finished!"

;;

stop)

echo "Stoping svnserve..."

killall svnserve

echo "Finished!"

;;

restart)

$0stop

$0start

;;

*)

echo "Usage: svn { start | stop | restart } "

exit 1

 

esac

 

####

之后便可以以service svn start(restart/stop)方式啟動SVN。
通過web方式訪問svn有很多方法,請參閱配置websvn或配置bsSvnBrowser的方法de>

客戶端訪問

1、下載安裝文件
window 64位的話下載:TortoiseSVN-1.7.6.22632-x64-svn-1.7.4.msi
window 32位的話下載:TortoiseSVN-1.6.5.16974-win32-svn-1.6.5.msi
具體的下載文件可以在網上下載下,一找一大堆
2、通過客戶端進行訪問
地址如下:
svn://{your-server-ip}:9999/tshop/ 或者 svn://{your-server-ip}:3690/tshop/
注意
不要在瀏覽器中通過http的方式進行訪問,如下地址:
http://{your-server-ip}:9999/tshop/ 或者 http://{your-server-ip}:3690/tshop/
那樣肯定是不行的,因為你沒有配置http的服務,上面是安裝獨立的SVN服務器


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM