標籤:時間 右鍵 密碼 用戶端 password 恢複 root 還原 mit
簡介:
目前流行的版本控制軟體中,SVN ( 集中式版本控制 ) 算是使用範圍更廣、且使用時間更早的一款了,現在 git ( 分布式版本控制 ) 更火爆一點。
一、安裝svn
[[email protected] ~]# yum -y install subversion[[email protected] ~]# svn --version #查看版本號碼svn,版本 1.6.11 (r934486)
二、配置svn
1、建立工作目錄及版本庫
[[email protected] ~]# mkdir /svn[[email protected] ~]# svnadmin create /svn/myrepos #建立一個名為myrepos的版本庫[[email protected] ~]# ls /svn/myrepos/[[email protected] ~]# tree /svn/myrepos/conf//svn/myrepos/conf/├── authz #使用者授權設定檔├── passwd #使用者認證設定檔└── svnserve.conf #服務組態檔
2、修改svn版本庫設定檔(需要重啟svnserver)
[[email protected] ~]# grep -vP ‘^#|^$‘ /svn/myrepos/conf/svnserve.conf [general]anon-access = none #匿名使用者存取許可權auth-access = write #認證使用者存取權限password-db = passwd #認證使用者命名檔案 authz-db = authz #目錄授權檔案realm = My First Repository #提示資訊[sasl]
3、添加認證使用者、密碼(username = password)
[[email protected] ~]# grep -vP ‘^#|^$‘ /svn/myrepos/conf/passwd [users]lys = liuyisaiqs = qingshan
4、添加目錄授權
[[email protected] ~]# grep -vP ‘^#|^$‘ /svn/myrepos/conf/authz [aliases][groups][myrepos:/] #授權目錄 lys = rw #授權認證使用者lys(可讀、可寫)qs = r #授權認證使用者qs(可讀)* = #非授權認證使用者(無許可權)
5、以守護進程的方式啟動svn
[[email protected] ~]# svnserve -d -r /svn #-d 以守護進程的方式啟動一個svnserver,-r 指定版本庫
#預設監聽TCP 3690 連接埠,以守護進程模式啟動時,可以使用--list-port、--list-host來指定連接埠、主機
[[email protected] ~]# netstat -lnpt | grep 3690tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN 3109/svnserve
6、授權測試
[[email protected] ~]# svn checkout --no-auth-cache --username lys --password liuyisai svn://192.168.2.205/myrepos /home/lys/取出版本 0。[[email protected] ~]# svn checkout --no-auth-cache --username qs --password qingshan svn://192.168.2.205/myrepos /home/qs取出版本 0。
[[email protected] ~]# touch /home/lys/readme #建立測試檔案[[email protected] ~]# svn add /home/lys/readme #添加到工作區A /home/lys/readme[[email protected] ~]# svn --no-auth-cache --username lys --password liuyisai commit -m ‘add readme‘ /home/lys/readme 增加 home/lys/readme傳輸檔案資料.提交後的版本為 1。
[[email protected] ~]# touch /home/qs/readme1[[email protected] ~]# svn add /home/qs/readme1 A /home/qs/readme1[[email protected] ~]# svn --no-auth-cache --username qs --password qingshan commit -m ‘add readme1‘ /home/qs/readme1 svn: 提交失敗(細節如下): svn: 認證失敗
三、停止svnserver
[[email protected] ~]# kill $(ps aux | grep svnserve | grep -v grep | awk ‘{print $2}‘)
四、svn備份、還原
1、邏輯備份(備份靈活、可以全量、增量備份--incremental、節省空間的,適合版本庫比較小的規模)
[[email protected] ~]# svnadmin dump /svn/myrepos > /data/backup/myrepos_$(date +%Y%m%d).bak
2、物理備份(佔用空間大,備份、恢複速度快)
[[email protected] ~]# svnadmin hotcopy /svn/myrepos/ /data/backup/myrepos_hot_$(date +%Y%m%d).bak
3、邏輯還原
[[email protected] ~]# svnadmin load /svn/myrepos/ < /data/backup/myrepos_20161024.bak #注意:如果版本庫被刪,還原以後還需重新設定認證使用者、授權等!
4、物理還原
[[email protected] ~]# svnadmin hotcopy /data/backup/myrepos_hot_20161024.bak/ /svn/myrepos/
五、win用戶端串連
1、下載、安裝小烏龜 ( TortoiseSVN )
2、建立工作目錄,右鍵 Checkout --> URL ( svn://192.168.2.205/myrepos ) --> 輸入使用者名稱、密碼 ( lys / liuyisai )
3、測試授權,建立一個檔案,添加,提交 看看是否很授權吻合 !
SVN 集中式版本控制軟體