SVN搭建

**環境準備

[root@lb01 ~]# cat /etc/redhat-release 
CentOS release 6.9 (Final)
[root@lb01 ~]# uname -r
2.6.32-696.el6.x86_64

安裝SVN

yum install -y subversion
[root@lb01 ~]# rpm -qa subversion
subversion-1.6.11-15.el6_7.x86_64

配置SVN並啓動SVN
建立SVN版本庫數據存儲根目錄svndata和用戶,密碼權限目錄svnpasswd

[root@lb01 ~]# mkdir -p /application/svndata  #創建數據存儲目錄
[root@lb01 ~]# mkdir -p /application/svnpasswd #創建密碼和授權目錄

[root@lb01 ~]# svnadmin create /application/svndata/sadoc  #初始化SVN項目目錄
[root@lb01 ~]# tree /application/svndata/  #查看剛剛初始化的創建有哪些東西
/application/svndata/
`-- sadoc
    |-- README.txt
    |-- conf    #配置文件目錄
    |   |-- authz
    |   |-- passwd
    |   `-- svnserve.conf
    |-- db
    |   |-- current
    |   |-- format
    |   |-- fs-type
    |   |-- fsfs.conf
    |   |-- min-unpacked-rev
    |   |-- rep-cache.db
    |   |-- revprops
    |   |   `-- 0
    |   |       `-- 0
    |   |-- revs
    |   |   `-- 0
    |   |       `-- 0
    |   |-- transactions
    |   |-- txn-current
    |   |-- txn-current-lock
    |   |-- txn-protorevs
    |   |-- uuid
    |   `-- write-lock
    |-- format
    |-- hooks
    |   |-- post-commit.tmpl
    |   |-- post-lock.tmpl
    |   |-- post-revprop-change.tmpl
    |   |-- post-unlock.tmpl
    |   |-- pre-commit.tmpl
    |   |-- pre-lock.tmpl
    |   |-- pre-revprop-change.tmpl
    |   |-- pre-unlock.tmpl
    |   `-- start-commit.tmpl
    `-- locks
        |-- db-logs.lock
        `-- db.lock
[root@lb01 ~]# cd /application/svndata/sadoc/conf/  #進入配置目錄
[root@lb01 conf]# cp svnserve.conf svnserve.conf.ori   #修改配置文件備份原來的配置文件
[root@lb01 conf]# vim svnserve.conf
 12 anon-access = none   #修改anon-access參數,參數解釋:能不能允許匿名訪問,none爲不可以。
 13 auth-access = write  #認證訪問,設置爲可寫
 20 password-db = /application/svnpasswd/passwd   #密碼文件路徑
27 authz-db = /application/svnpasswd/authz     #授權文件路徑 放在統一路徑到時候多個項目可以方便以後管理

[root@lb01 conf]# cp authz passwd /application/svnpasswd/  #把配置目錄中的authz 和passwd拷貝到剛剛設置的路徑
[root@lb01 conf]# svnserver --help  #查看幫助
-bash: svnserver: command not found
[root@lb01 conf]# svnserve --help
svnserve: warning: cannot set LC_CTYPE locale
svnserve: warning: environment variable LANG is en
svnserve: warning: please check that your locale name is correct
usage: svnserve [-d | -i | -t | -X] [options]

Valid options:
  -d [--daemon]            : daemon mode  #後臺啓動
  -i [--inetd]             : inetd mode
  -t [--tunnel]            : tunnel mode
  -X [--listen-once]       : listen-once mode (useful for debugging)
  -r [--root] ARG          : root of directory to serve  #指定根目錄
  -R [--read-only]         : force read only, overriding repository config file
  --config-file ARG        : read configuration from file ARG
  --listen-port ARG        : listen port  #監聽的端口默認3690
                             [mode: daemon, listen-once]
  --listen-host ARG        : listen hostname or IP address  #監聽的主機和IP
                             [mode: daemon, listen-once]
  -T [--threads]           : use threads instead of fork [mode: daemon]
  --foreground             : run in foreground (useful for debugging)
                             [mode: daemon]
  --log-file ARG           : svnserve log file  #日誌文件
  --pid-file ARG           : write server process ID to file ARG  #PID文件
                                   [mode: daemon, listen-once]
  --tunnel-user ARG        : tunnel username (default is current uid's name)
                             [mode: tunnel]
  -h [--help]              : display this help  #幫助
  --version                : show program version information  #版本
[root@lb01 conf]# svnserve -d -r /application/svndata/
svnserve: warning: cannot set LC_CTYPE locale
svnserve: warning: environment variable LANG is en
svnserve: warning: please check that your locale name is correct
這是一個 LANG環境變量導致的問題,如果使用中文的字符集不會出現這種情況,也不影響SVN使用,也可以使用下面的source設置一下就不會提示
[root@lb01 conf]# source /etc/sysconfig/i18n  #啓動前可以使用source處理
[root@lb01 conf]# lsof -i :3690  #查看SVN的端口是否啓動成功
COMMAND    PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
svnserve 29340 root    3u  IPv4  36359      0t0  TCP *:svn (LISTEN)

剛剛svnserve.conf配置文件設置了通過passwd文件認證訪問,所以編輯passwd文件添加訪問用戶和密碼

[root@lb01 conf]# cd /application/svnpasswd/
[root@lb01 svnpasswd]# vim passwd  
[users]
**# harry = harryssecret
# sally = sallyssecret****
dayu = 123456   #(訪問SVN的用戶名和密碼)
xiaoyu = 123456
stu001 = 123
stu002 = 456

由於SVN的密碼文件是明文的,可以通過ldap或者域的方式,集中管理

[root@lb01 svnpasswd]# vim authz  #用戶權限的授權配置
 20 
 21 [groups]    #組
 22 ygtq = stu001,stu002
 23 
 24 [sadoc:/]    #對應初始化的項目目錄,設置哪些用戶可讀可寫。
 25 dayu = rw  #(r爲讀,w爲寫)
 26 xiaoyu = r
 27 @ygtq = r  #用戶組只讀

SVN服務端配置完成**

客戶端在百度雲提供了下載地址:
鏈接: https://pan.baidu.com/s/19e0f_dze56vQqrnZAFmw2w 密碼: v97w
安裝完客戶端之後重啓電腦讓軟件生效
SVN搭建

第一次安裝有SVN Checkout字樣

SVN搭建

SVN搭建
點擊OK彈出要求輸入賬戶密碼
SVN搭建
輸入完賬戶密碼彈出下面提示框表示成功
SVN搭建

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章