Windows和Linux环境下搭建SVN服务器
?--------------------------Windows下搭建SVN服務器-----------------------------
一、安裝SVN服務端
軟件包Setup-Subversion-1.8.17.msi,下載地址:https://sourceforge.net/projects/win32svn/files/latest/download
二、SVN服務端命令
1.查看SVN信息
2.創建數據倉庫
首先創建一個總的倉庫目錄repository,然后在其下創建product和project兩個文件夾,分別作為產品和項目兩個倉庫的目錄:
SVN命令創建product和project倉庫:
svnadmin create c:\repository\product
svnadmin create c:\repository\project
倉庫創建后其目錄結構如下所示:
3.啟動SVN服務器
多倉庫啟動:svnserve -d -r c:\repository(同時啟動project和product兩個倉庫)
單倉庫啟動:(兩個倉庫需要單獨啟動)
svnserve -d -r c:\repository\product
svnserve -d -r c:\repository\project
服務器上有多個SVN倉庫時,應該用多倉庫啟動命令
4.客戶端連接測試
首先分別在兩臺計算機上安裝SVN客戶端:TortoiseSVN,下載網址:https://tortoisesvn.net/downloads.html
然后多倉庫啟動SVN服務器,在本機和同一局域網上的計算機訪問product倉庫:
注意:總倉庫目錄repository訪問時不用輸入,SVN服務的默認端口號為3690,訪問地址可以寫成:svn://192.168.0.182:3690/product
三、權限設置
1.svnserve.conf 服務器配置
# 匿名用戶訪問版本庫權限,可選值read/write/none
anon-access = none
# 授權用戶訪問版本庫權限,可選值read/write/none
auth-access = write
# 用戶名密碼文件,可以使用絕對路徑,相對路徑是指相對于conf目錄的位置。注意:如果該選項不開啟,用戶名密碼文件將失效
password-db = passwd
# 授權管理文件,可以使用絕對路徑,相對路徑是指相對于conf目錄的位置。注意:如果該選項不開啟,授權管理將失效
authz-db = authz
# 版本庫認證域名稱,也就是需要認證的倉庫名
realm = product
2.passwd 用戶密碼管理
[users]
zhangsan = zs123
lisi = ls123
wangwu = ww123
alice = a123
shine = 123456
3.authz 授權管理
# 分組設置權限
[groups]
# 開發人員
develpoer = zhangsan,lisi
# 測試人員
tester= wangwu,alice
# 設定根目錄權限
[/]
# 開發人員讀寫權限(給組分配權限時前面加@符)
@develpoer = rw
# 測試人員讀權限
@tester= r
# shine具有讀寫權限
shine = rw
[/myapp/sql]
# 張三用戶對于product倉庫下的“myapp/sql”目錄具有讀寫權限
zhangsan= rw
# 李四具有讀權限
lisi= r
# 張三無任何權限
zhangsan=
# 其他任何人沒有任何權限
* =
四、將SVN設置成系統服務
在windows下部署SVN服務器,想讓SVN服務在系統開機時后臺自動啟動,可以注冊windows系統服務。
例如:sc create SVN-Service binpath= "D:\Program Files\Subversion\bin\svnserve.exe --service -r c:\repository" displayname="SVN服務" start=auto depend=Tcpip
服務啟動:net stat SVN-Service
刪除服務:sc delete SVN-Service
?
---------------------Linux下搭建SVN服務器-----------------------------
一、下載軟件和依賴包
cd Desktop
wget http://mirrors.tuna.tsinghua.edu.cn/apache/subversion/subversion-1.9.7.tar.gz
wget https://jaist.dl.sourceforge.net/project/libpng/zlib/1.2.11/zlib-1.2.11.tar.gz
wget http://archive.apache.org/dist/apr/apr-util-1.6.1.tar.gz
wget http://archive.apache.org/dist/apr/apr-1.6.3.tar.gz
wget http://www.sqlite.org/sqlite-amalgamation-3071501.zip
二、安裝軟件依賴包
1.安裝 apr.tar.gz
cd Desktop
tar -zxvf apr-1.6.3.tar.gz
cd apr-1.6.3/
./configure --prefix=/usr/local/apr
make && make install
2.安裝 apr-util.tar.gz
cd Desktop
tar -zxvf apr-util-1.6.1.tar.gz
cd apr-util-1.6.1/
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr --with-expat=/usr/local/expat
make && make install
3.安裝 zlib-1.2.11.tar.gz
cd Desktop
tar -zxvf zlib-1.2.11.tar.gz
cd zlib-1.2.11/
./configure --prefix=/usr/local/zlib
make && make install
4.安裝 subversion-1.9.7.tar.gz
cd Desktop
ar -zxvf subversion-1.9.7.tar.gz
unzip sqlite-amalgamation-3071501.zip
mv sqlite-amalgamation-3071501 ./subversion-1.9.7/sqlite-amalgamation
cd subversion-1.9.7
./configure --prefix=/usr/local/svn --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-zlib=/usr/local/zlib --without-berkeley-db --with-ssl
make
make install
5.檢驗是否安裝成功
cd /usr/local/svn/bin
./svnserve --version
?
三、安裝時可能會遇到的一些問題
上面的安裝步驟都是kali linux上安裝的,再次從Ubuntu上安裝時可能會遇到下面的問題
1.安裝 apr.tar.gz執行./configure命令時最后出現下面的錯誤:
config.status: executing libtool commands
rm: cannot remove 'libtoolT': No such file or directory
config.status: executing default commands
解決方法:修改configure文件,找到:$RM "$cfgfile" 這一行,將其注釋掉
2.安裝apr-util.tar.gz執行make命令時出現如下的錯誤:
xml/apr_xml.c:35:19: fatal error: expat.h: 沒有那個文件或目錄
#include <expat.h>
^
compilation terminated.
解決方法:缺少expat庫,安裝expat-2.1.0.tar.gz,項目主頁:https://sourceforge.net/projects/expat/
cd Desktop
tar -zxvf expat-2.1.0.tar.gz
cd expat-2.1.0
./configure --prefix=/usr/local/expat
make
make install
重新編譯apr-util,再進行make:
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr --with-expat=/usr/local/expat
make
make install
四、倉庫的創建和配置
Linux和Windows下對于倉庫的創建和配置方法一致,這里不再描述。設置完成后啟動和訪問SVN服務
?
為了方便期間可添加環境變量:vi /etc/profile
export ZOOKEEPER_HOME=/usr/local/zookeeper-3.4.11
export PATH=$PATH:$ZOOKEEPER_HOME/bin:/usr/local/svn/bin
?
轉載于:https://www.cnblogs.com/shine620/p/8089975.html
總結
以上是生活随笔為你收集整理的Windows和Linux环境下搭建SVN服务器的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 西九龙出境能带几条烟
- 下一篇: 理解php反序列化漏洞