導航:首頁 > IDC知識 > svn伺服器下載linux

svn伺服器下載linux

發布時間:2020-12-07 05:08:13

1、如何在linux上安裝svn伺服器

你好,centos下安裝 svn 1.9.5 按照步驟一步一步裝歲弊就OK 。以下是我的步驟。分享給你
安裝1.9
准備工作:
1、安裝編譯工具包
yum install apr* autoconf automake bison bzip2 cloog-ppl compat* cpp curl curl-devel fontconfig fontconfig-devel freetype freetype* freetype-devel gcc gcc-c++ gtk+-devel gd gettext gettext-devel glibc kernel kernel-headers keyutils keyutils-libs-devel krb5-devel libcom_err-devel libpng* libjpeg* libsepol-devel libselinux-devel libstdc++-devel libtool libtool* libgomp libxml2 libxml2-devel libXpm* libtiff libtiff* libX* make mpfr ncurses* ntp openssl openssl-devel patch pcre-devel perl php-common php-gd policycoreutils ppl telnet t1lib t1lib* nasm nasm* wget zlib-devel zlib unzip perl-ExtUtils-Embed
2、yum remove apr apr-util subversion subversion-libs #刪除系統中原有的svn及依賴包
3、下載軟體包
https://dist.apache.org/repos/dist/release/apr/apr-1.5.2.tar.gz
https://dist.apache.org/repos/dist/release/apr/apr-util-1.5.4.tar.gz
http://prdownloads.sourceforge.net/scons/scons-2.3.5.tar.gz
http://www.openssl.org/source/openssl-1.0.1o.tar.gz
https://www.apache.org/dist/serf/serf-1.3.9.tar.bz2
http://www.apache.org/dist/subversion/subversion-1.8.13.tar.gz
http://www.sqlite.org/2017/sqlite-amalgamation-3160200.zip

1、安裝apr
cd /usr/local/src #進入軟體包存放目錄
tar zxvf apr-1.5.2.tar.gz #解壓
cd apr-1.5.2 #進入安裝目錄
./configure --prefix=/usr/local/apr #配置
make #編譯
make install #安裝

2、安裝apr-util
cd /usr/local/src
tar zxvf apr-util-1.5.4.tar.gz
cd apr-util-1.5.4
./configure --with-apr=/usr/local/乎如族apr/bin/apr-1-config
make && make install

3、安裝scons
cd /橡漏usr/local/src
tar zxvf scons-2.3.5.tar.gz
cd scons-2.3.5
python setup.py install #配置安裝

4、安裝openssl
cd /usr/local/src
tar zxvf openssl-1.0.1o.tar.gz
cd openssl-1.0.1o
CFLAGS=-fPIC ./config --prefix=/usr/local/openssl enable-shared
make && make install
vi /etc/profile #添加系統環境變數
export PATH=$PATH:/usr/local/openssl/bin >> /etc/profile
#export PATH=$PATH:/usr/local/openssl/bin >> /etc/profile
:wq! #保存退出
source /etc/profile #使配置生效
ln -s /usr/local/openssl/include/openssl /usr/include/openssl #添加系統軟連接
5、安裝serf
cd /usr/local/src
tar -xf serf-1.3.9.tar.bz2
cd serf-1.3.9
scons PREFIX=/usr/local/serf APR=/usr/local/apr/bin/apr-1-config APU=/usr/local/apr/bin/apu-1-config OPENSSL=/usr/local/openssl
scons install
cd /usr/local/serf/lib
cp libserf-1.so* /usr/local/lib/ #拷貝文件到系統目錄

6、安裝svn
cd /usr/local/src
tar zxvf subversion-1.9.5.tar.gz
cd subversion-1.9.5
mkdir /usr/local/src/subversion-1.9.5/sqlite-amalgamation #創建sqlite-amalgamation目錄
cd /usr/local/src
unzip sqlite-amalgamation-3160200.zip -d /usr/local/src/subversion-1.9.5/sqlite-amalgamation
mv /usr/local/src/subversion-1.9.5/sqlite-amalgamation/sqlite-amalgamation-3160200/* /usr/local/src/subversion-1.9.5/sqlite-amalgamation
#解壓sqlite-amalgamation軟體包到sqlite-amalgamation目錄
cd /usr/local/src/subversion-1.9.5
./configure --prefix=/usr/local/svn --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr/bin/apu-1-config --with-serf=/usr/local/serf --with-openssl=/usr/local/openssl --enable-mod-activation #配置
make #編譯
make install #安裝
vi /etc/profile #添加系統環境變數,添加到最後一行
export PATH=$PATH:/usr/local/svn/bin
:wq! #保存退出
source /etc/profile #使配置立刻生效
whereis libexpat.so.1 #查找文件安裝目錄,如下:
libexpat.so: /lib/libexpat.so.0 /usr/local/lib/libexpat.so /usr/local/lib/libexpat.so.1
vi /etc/ld.so.conf #編輯加入libexpat.so.1的目錄
/usr/local/lib/
:wq! #保存退出
ldconfig #使配置生效

2、svn windows怎麼連接到linux伺服器上

可以通過TortoiseSVN訪問。

1,TortoiseSVN,TortoiseSVN在百度中心就可以了。
2,安裝TortoiseSVN,雙擊運行,按照提示,選擇安裝目錄,直到安裝完成。
3,安裝完成後,在桌面或者其他目錄下右擊滑鼠即可看到TortoiseSVN的菜單。
4,導出項目,右擊空白處,選擇TortoiseSVN - checkout
5,按提示輸入主機ip及目錄,如192.168.1.111/svn/test,輸入伺服器預設的賬戶名和密碼。
6,檢出完成後可以修改文件,進行提交和update操作。

3、怎麼在linux伺服器上部署svn伺服器

舉個例子,命令執行創建:svnadmin create /svn 需要修改配置文件,設置賬號密碼 啟動svn服務:svnserve -d -r /svn svn://IP/svn 就是你的訪問版路徑 pc安裝svn客戶權端,通過檢出或者版本庫瀏覽器訪問地址即可

4、Linux centos下安裝svn伺服器就這么難么

Centos下安裝SVN伺服器詳細步驟

 

在保證聯網的條件下,執行以下一、二操作,否則請先下載apache、svn的安裝包並解壓縮

1.安裝apache

 yum install httpd

2.安裝svn

 yum install subversion

 yum install mod_dav_svn

3.創建SVN倉庫

 mkdir /home/svn

4.在SVN倉庫目錄下創建你要的版本庫

 svnadmin create /home/svn/xyz (版本庫名:xyz)

5.創建用戶及密碼

 在/home/svn/xyz/conf目錄下,輸入:htpasswd -c passwd xiao

 第一次在創建用戶密碼,需加上「- c」參數

6.設置許可權

 編輯authz文件,設置組別人員讀寫許可權

7.修改svnserver.conf

8.啟動SVN服務

 svnserve -d --listen-port 3690 -r /home/svn/xyz

9.防火牆打開3690埠

進入/etc/sysconfig,修改iptables文件

加入如下:

 -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3690 -j ACCEPT

10.修改apache,目的是保證http能夠訪問

修改/etc/httpd/conf.d/subversion.conf文件

加入如下:

 

 LoadMole dav_svn_mole moles/mod_dav_svn.so

 LoadMole authz_svn_mole moles/mod_authz_svn.so

<Location />

 DAV svn

 SVNParentPath /home/svn/xyz

AuthType Basic

 AuthName "Authorization Realm"

 AuthUserFile /home/svn/xyz/conf/passwd

 AuthzSVNAccessFile /home/svn/xyz/conf/authz

Require valid-user

</Location>

11.配置SVN下目錄被apache擁有

 

 chown –R apache:apache/home/svn/xyz

12.設置apache開機啟動

chkconfig httpd on

13.設置svn開機啟動

 (1)編寫/usr/local/customshell/svn.sh,內容為svnserve –d --listen-port 3690 –r / home/svn/xyz

 (2). vim /etc/rc.d/rc.local 增加一句:/usr/local/customshell/svn.sh

5、linux下svn客戶端訪問windows下的svn伺服器

一,安裝svn伺服器

在Linux中安裝了服務端,

$ yum install subversion

二,在Windows中安裝客戶端(TortoiseSVN-1.9.4.27285-x64-svn-1.9.4.msi)

三,基本的SVN伺服器配置

1,新建一個目錄用於存儲SVN所有文件

$ mkdir /svn

2,新建一個版本倉庫$ svnadmin create /svn/project

3,添加用戶
要添加SVN用戶非常簡單,只需在/svn/project/conf/passwd文件添加一個形如「username=password」的 賬號為username和密碼為password

[users]
mysj = mysj
test = test

5,修改用戶訪問策略
/svn/project/conf/authz記錄用戶的訪問策略,以下是參考:

[groups]
admin=mysj //將用戶進行分組
user=test

[project:/] //進行授權

@admin = rw //r表示讀,w表示寫
@user = r
* =

6,修改svnserve.conf文件,讓用戶和策略配置升效.
svnserve.conf內容如下:

此處切記要注意空格,不然會導致svn配置不成功

[general]
anon-access = none
auth-access = write
password-db = /svn/project/conf/passwd
authz-db = /svn/project/conf/authz

7,啟動伺服器
# svnserve -d -r /svn

注意:如果修改了svn配置,需要重啟svn服務,步驟如下:

$ ps -aux|grep svnserve
$ kill -9 ID號 殺死服務
$ svnserve -d -r /svn
四,在Windows系統中檢出svn的文件,此時的地址也應該為 svn://Linux的ip地址/project/文件夾名(你自己創建的)。

6、linux 搭建的svn伺服器怎麼訪問

舉個例子,命令執行創建:svnadmin create /svn 需要修改配置文件,設置賬號密碼
啟動svn服務:svnserve -d -r /svn
svn://IP/svn 就是你的訪問路徑
pc安裝svn客戶端,通過檢出或者版本庫瀏覽器訪問地址即可

7、怎麼在linux伺服器上部署svn

1. 安裝SVN伺服器:
檢查是否已安裝
# rpm -qa subversion

安裝SVN伺服器
# yum install httpd httpd-devel subversion mod_dav_svn mod_auth_mysql

驗證安裝
# cd /etc/httpd/moles
# ls | grep svn
mod_authz_svn.so
mod_dav_svn.so

查看版本
# svnserve --version

2. 代碼庫創建:
安裝完成後要建立SVN庫
# mkdir -p /opt/svn/repositories
# svnadmin create /opt/svn/repositories

執行後,自動建立repositories庫,查看/opt/svn/repositories文件夾包含了conf,db,format,hooks,locks,README.txt等文件,說明一個SVN庫已經建立。

3. 配置版本庫:
進入上面conf文件夾下,進行配置:
a. 用戶密碼passwd配置:
# vi + passwd //+表示游標放在文件最低端

修改passwd為一下內容:
[users]
# harry = harryssecret
# sally = sallyssecret
zhoulf=123456

b. 許可權控制authz配置:
# vi + authz

設置哪些用戶可以訪問哪些目錄,向authz文件追加以下內容:
[/]
zhoulf=rw //給該用戶訪問所有庫的許可權

[repositories:/project] //repository庫的根目錄許可權
zhoulf=rw
/ 表示根目錄及以下,根目錄是svnserve啟動時指定的,我們指定的是/opt/svn;/ 就是指對全部版本庫都具有許可權
repositories:/ 表示對庫repositories的根目錄設置許可權
PS:
* 許可權配置文件中出現的用戶名必須已在用戶配置文件中定義。
* 對許可權配置文件的修改立即生效,不必重啟svn。

c. 服務svnserve.con配置:
# vi + svnserve.conf

添加一下內容:

[general]
#匿名訪問的許可權,可以是read,write,none,默認為read
anon-access=none
#使授權用戶有寫許可權
auth-access=write
#密碼資料庫的路徑
password-db=passwd
#訪問控制文件
authz-db=authz
#認證命名空間,subversion會在認證提示里顯示,並且作為憑證緩存的關鍵字
realm=/opt/svn/repositories

這里注意各標簽不能錯,也不能有重復,不然無法連接。

d. 配置防火牆埠(如果需要):
不一定每個人都需要設置,可以先測試後再看是否需要打開埠
# vi /etc/sysconfig/iptables

添加一下內容:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3690 -j ACCEPT

保存後重啟防火牆
# service iptables restart

4. 查看:
a. 啟動SVN
# svnserve -d -r /opt/svn/repositories

b. 查看SVN進程
# ps -ef|grep svn|grep -v grep
root 12538 1 0 14:40 ? 00:00:00 svnserve -d -r /opt/svn/repositories

c. 檢測SVN埠
# netstat -ln |grep 3690
tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN

5. 停止重啟SVN:
# killall svnserve //停止
# svnserve -d -r /opt/svn/repositories // 啟動

6. 測試連接:
使用TortoiseSVN進行測試:
1. SVN服務啟動後,需要使用客戶端測試連接:
客戶端連接地址:svn://192.168.15.231;然後,輸入用戶名密碼;
2. 新建一個文件夾,即本地的庫文件夾,右鍵checkout,將會得到一個隱藏文件夾.svn;
3. 在此文件夾中放入項目內容,然後右鍵點擊commit,就可以上傳本地項目了。

8、在linux下如何下載svn上的文件?

linux下載svn客戶端就可以使用命令下載文件。
1、將文件checkout到本地目錄
svn checkout path(path是伺服器上的目錄)
例如:svn checkout svn://192.168.1.1/pro/domain
簡寫:svn co
2、往版本庫中添加新的文件
svn add file
例如:svn add test.php(添加test.php)
svn add *.php(添加當前目錄下所有的php文件)
3、將改動的文件提交到版本庫
svn commit -m 「LogMessage「 [-N] [--no-unlock] PATH(如果選擇了保持鎖,就使用–no-unlock開關)
例如:svn commit -m 「add test file for my test「 test.php
簡寫:svn ci
4、加鎖/解鎖
svn lock -m 「LockMessage「 [--force] PATH
例如:svn lock -m 「lock test file「 test.php
svn unlock PATH
5、更新到某個版本
svn update -r m path
例如:
svn update如果後面沒有目錄,默認將當前目錄以及子目錄下的所有文件都更新到最新版本。
svn update -r 200 test.php(將版本庫中的文件test.php還原到版本200)
svn update test.php(更新,於版本庫同步。如果在提交的時候提示過期的話,是因為沖突,需要先update,修改文件,然後清除svn resolved,最後再提交commit)
簡寫:svn up
6、查看文件或者目錄狀態
1)svn status path(目錄下的文件和子目錄的狀態,正常狀態不顯示)
【?:不在svn的控制中;M:內容被修改;C:發生沖突;A:預定加入到版本庫;K:被鎖定】
2)svn status -v path(顯示文件和子目錄狀態)
第一列保持相同,第二列顯示工作版本號,第三和第四列顯示最後一次修改的版本號和修改人。
註:svn status、svn diff和 svn revert這三條命令在沒有網路的情況下也可以執行的,原因是svn在本地的.svn中保留了本地版本的原始拷貝。
簡寫:svn st
7、刪除文件
svn delete path -m 「delete test fle「
例如:svn delete svn://192.168.1.1/pro/domain/test.php -m 「delete test file」
或者直接svn delete test.php 然後再svn ci -m 『delete test file『,推薦使用這種
簡寫:svn (del, remove, rm)
8、查看日誌
svn log path
例如:svn log test.php 顯示這個文件的所有修改記錄,及其版本號的變化
9、查看文件詳細信息
svn info path
例如:svn info test.php
10、比較差異
svn diff path(將修改的文件與基礎版本比較)
例如:svn diff test.php
svn diff -r m:n path(對版本m和版本n比較差異)
例如:svn diff -r 200:201 test.php
簡寫:svn di
11、將兩個版本之間的差異合並到當前文件
svn merge -r m:n path
例如:svn merge -r 200:205 test.php(將版本200與205之間的差異合並到當前文件,但是一般都會產生沖突,需要處理一下)
12、SVN 幫助
svn help
svn help ci
——————————————————————————
以上是常用命令,下面寫幾個不經常用的
——————————————————————————
13、版本庫下的文件和目錄列表
svn list path
顯示path目錄下的所有屬於版本庫的文件和目錄
簡寫:svn ls
14、創建納入版本控制下的新目錄
svn mkdir: 創建納入版本控制下的新目錄。
用法: 1、mkdir PATH…
2、mkdir URL…
創建版本控制的目錄。
1、每一個以工作副本 PATH 指定的目錄,都會創建在本地端,並且加入新增
調度,以待下一次的提交。
2、每個以URL指定的目錄,都會透過立即提交於倉庫中創建。
在這兩個情況下,所有的中間目錄都必須事先存在。
15、恢復本地修改
svn revert: 恢復原始未改變的工作副本文件 (恢復大部份的本地修改)。revert:
用法: revert PATH…
注意: 本子命令不會存取網路,並且會解除沖突的狀況。但是它不會恢復
被刪除的目錄
16、代碼庫URL變更
svn switch (sw): 更新工作副本至不同的URL。
用法: 1、switch URL [PATH]
2、switch –relocate FROM TO [PATH...]
1、更新你的工作副本,映射到一個新的URL,其行為跟「svn update」很像,也會將
伺服器上文件與本地文件合並。這是將工作副本對應到同一倉庫中某個分支或者標記的
方法。
2、改寫工作副本的URL元數據,以反映單純的URL上的改變。當倉庫的根URL變動
(比如方案名或是主機名稱變動),但是工作副本仍舊對映到同一倉庫的同一目錄時使用
這個命令更新工作副本與倉庫的對應關系。
17、解決沖突
svn resolved: 移除工作副本的目錄或文件的「沖突」狀態。
用法: resolved PATH…
注意: 本子命令不會依語法來解決沖突或是移除沖突標記;它只是移除沖突的
相關文件,然後讓 PATH 可以再次提交。

9、怎麼在linux上安裝svn服務端

centos 6.5

1.安裝tftp軟體
# yum -y install tftp*
2.修改配置文件

# vi /etc/xinetd.d/tftp

server_args = -s /tftpboot '加-c
disable = yes '改為no #默認tftp服務是關閉的。

修改後的代碼:
service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /var/lib/tftpboot -c
disable = no
per_source = 11
cps = 100 2
flags = IPv4
}

修改項server_args= -s <path> -c
其中<path>處可以改為你的tftp-server的根目錄,參數-s指定chroot,-c指定了可以創建文件。

4.

# vi /etc/selinux/config

SELINUX=permissive 或者 disable

5.啟動tftp服務
# service xinetd start

不能啟動試試關閉防火牆

# service iptables stop

linux下tftp的使用

$ tftp 192.168.x.x -c put 22.txt 從linux下上傳一個文件到 ip 為192.168.x.x 遠程主機下

$ tftp 192.168.x.x -c get 33.txt 從遠程主機得到一個33.txt的文件

10、linux svn伺服器上的文件保存在哪?

svn有兩種存復儲方式:BDB和FSFS,目前用制的最多的是FSFS方式,這種方式的話,一般是存儲在\db\revs文件夾下,裡面有一堆以版本號命名的文件,如:0、1、2、3、4......,那個就是了。
svn先把0版本的狀態壓縮成1個文件,然後每次版本更新時就針對變動的部分做一個壓縮文件,每次都是增加一個增量包,最後在伺服器上能看到文件名為從0開始到最終版本的一系列文件

與svn伺服器下載linux相關的知識