1. 程式人生 > >Linux 安裝SVN詳解

Linux 安裝SVN詳解

一般為了解決檔案版本更新迭代的問題,會有很多種方法處理,Windows版的svn和Linux版的svn最常用.

檢視yum安裝路徑以及歷史版本:

rpm -qa | grep subversion  檢視歷史版本命令

rpm -qa 查詢所有安裝的rpm包,可以配合grep命令
rpm -qi 查詢某個具體包的介紹
rpm -ql 列出某個具體包的所有檔案

rpm幾個預設安裝路徑:
/etc    一些設定檔案放置的目錄
/usr/bin    一些可執行檔案
/usr/lib64  一些程式使用的動態函式庫
/usr/share/doc  一些基本的軟體使用手冊與幫助文件
/usr/share/man  一些man page檔案
...

安裝:

yum install subversion 安裝命令,保證聯網直接執行。

檢視是否安裝成功:

svnserver --version 檢視是否安裝成功(安裝成功會有版本資訊顯示)

為了方便,直接在根目錄/home資料夾下建立svn資料夾.

建立svn資料夾:

[[email protected] /]# cd /home
[[email protected] home]# mkdir svn #建立資料夾
[[email protected] home]# svnadmin create /home/svn #建立倉庫
[
[email protected]
home]# ls svn conf db format hooks locks README.txt

注意:特別關注一下conf資料夾,因為svn的配置檔案存放在這裡.

檢視conf資料夾下的檔案:

[[email protected] home]# cd svn/conf
[[email protected] conf]# ls
authz  passwd  svnserve.conf

authz 是許可權控制檔案
passwd 是帳號密碼檔案
svnserve.conf 是SVN服務配置檔案
注意:上面的三個檔案就是svn的核心配置

配置passwd:(建立使用者)

[[email protected] conf]# vi passwd 
編輯檔案,找到下面的配置資訊
[users]
admin=admin
admin1=123456
admin2=123456

注意:上面的配置資訊是建立使用者以及配置密碼,呈現key=value(即:使用者名稱=密碼),等號兩邊有無空格都無所謂.

配置authz:(賦予許可權)

[[email protected] conf]# vi authz 
編輯檔案,找到下面的配置資訊
[/]
admin=rw #可讀可寫
admin1=r #只讀
admin2=r #只讀
*= #除了上面配置的三個之外的其他使用者,無任何訪問許可權

使用者分組:(根據需要自適配)

[[email protected] conf]# vi authz
編輯檔案,找到下面的配置資訊
[groups]
group1 = admin
group2 = admin1,admin2
[/]
@group1 = rw
@group2 = r
* =

建立了2個分組,分組1的使用者可讀可寫,分組2的使用者只讀

版本庫目錄格式:
[<版本庫>:/專案/目錄]
@<使用者組名> = <許可權>
<使用者名稱> = <許可權>

配置svnserve.conf:(svn系統配置)

[[email protected] conf]# vi svnserve.conf 
編輯檔案,依次找到下面的配置資訊,開啟下面的5個註釋,刪除#和配置前的空格,即保證配置資訊前面無空格,否則可能無效

anon-access = read #匿名使用者可讀

auth-access = write #授權使用者可寫

password-db = passwd #使用哪個檔案作為賬號檔案

authz-db = authz #使用哪個檔案作為許可權檔案

realm = /home/svn # 認證空間名,版本庫所在目錄

配置完上面的資訊之後,基本已經完成可安裝和配置,下面可以啟動了.

啟動與停止:

[[email protected] conf]# svnserve -d -r /home/svn 啟動
[[email protected] conf]# killall svnserve 停止

注意:svnserve後面無r,切勿寫成svnserver.
其中:-d表示守護程序, -r 表示在後臺執行

檢視svn程序:

[[email protected] conf]# ps -ef | grep svnserve
root      4908     1  0 21:32 ?        00:00:00 svnserve -d -r /home/svn
root      4949  4822  0 22:05 pts/0    00:00:00 grep svnserve
[[email protected] conf]# kill -9 4908 可以單獨使用kill命令結束程序(同:killall svnserve 停止)

客戶端連線:(我使用TortoiseSVN)

svn://IP		IP指伺服器外網IP(預設埠3690),如果使用阿里雲伺服器,記得新增安全組規則(正常的TCP協議即可)

示例:
示例
將127.0.0.1 替換成自己的服務IP,這裡只是為了示例
登入
將使用者名稱和密碼填寫正確,即可登入訪問(使用者名稱:admin,密碼admin)
訪問

轉載請註明出處!