日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

Linux CentOS下配置SVN+SVN勾子

發(fā)布時間:2025/3/20 linux 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux CentOS下配置SVN+SVN勾子 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

環(huán)境介紹:

操作系統(tǒng):CentOS release 6.5 (Final) 64位

網(wǎng)絡(luò)環(huán)境:內(nèi)網(wǎng)


1???配置SVN

1.1??安裝SVN組件包

使用yum安裝svn所需的組件包

#?yum?–y?install?subversion

1.2??配置SVN

1.2.1? 創(chuàng)建svn庫路徑

創(chuàng)建svn庫路徑,該目錄后期提供用戶文件寫入和讀取。

#?mkdir?-p?/date/svn/

1.2.2? 創(chuàng)建SVN版本庫

使用特定的命令來創(chuàng)建版本庫,創(chuàng)建成功后該目錄會出現(xiàn)SVN配置文件。

#?svnadmin?create?/date/svn/

1.2.3? 定義配置文件

#vim?/opt/svndata/repos1/conf/svnserve.conf[general] anon-access?=?none auth-access?=?write password-db?=?passwd???#定義用戶密碼的配置文件 authz-db?=?authz???????#定義用戶權(quán)限的配置文件 realm?=?svn

1.2.4? 用戶權(quán)限配置

1、創(chuàng)建svn訪問用戶

#vim?/data/svn/passwd[users] test?=?test??????????????創(chuàng)建了一個叫tset密碼為test的用戶

2、配置用戶訪問權(quán)限

#vi?/opt/svndata/repos1/conf/authz[groups] admin?=?test #?harry_and_sally?=?harry,sally [/] @admin?=?rw [repos1:/abc/aaa] @admin?=?r

版本庫目錄格式:

[<版本庫>:/項目/目錄]??? #是以項目名作為第一個單位。試想肯定是以項目為單元的

@<用戶組名> = <權(quán)限>

<用戶名> = <權(quán)限>

其中,方框號內(nèi)部分可以有多種寫法:

/,表示根目錄及以下。根目錄是svnserve啟動時指定的,我們指定為/opt/svndata。這樣,/就是表示對全部版本庫設(shè)置權(quán)限。

repos1:/,表示對版本庫1設(shè)置權(quán)限

repos2:/abc, ,表示對版本庫2中的abc項目設(shè)置權(quán)限

repos2:/abc/aaa, ,表示對版本庫2中的abc項目的aaa目錄設(shè)置權(quán)限

權(quán)限主體可以是用戶組、用戶或*,用戶組在前面加@*表示全部用戶。權(quán)限可以是wrwr和空,空表示沒有任何權(quán)限。

1.2.5? 啟動SVN

#?svnserve?-d?-r?/date/svn/

-d表示以daemon方式(后臺運行)運行

-r /date/svn指定根目錄是/date/svn

1.3??配置鉤子

1.3.1? 配置版本檢測工具

自己利用python寫了一個自動檢測庫里面文件版本的工具。代碼如下:

#?vim?/date/svn/hooks/gouzi.py #!/usr/bin/env?python if?__name__=='__main__':importsys,stringtry:logfile=?open('/tmp/python.out','a+')logfile.write("this?is?python?hook")logfile.close()except:exit(1)sys.exit(0)

此工具需放在庫目錄中的hooks目錄中。

1.3.2? 配置UPDATE腳本

1、首先在客戶端上手工checkout一次

#?svn?checkout?svn://192.168.21.28/repos

2、編輯自動同步腳本

#?vim?svn_update.sh

代碼如下

#!/bin/bash /usr/bin/svn?update??/linshi/repos?--username?test?--password?test if?[?$??==?0?]thenecho?"ok"?>>?/tmp/z.out fi

其中:/linshi/為存放目錄(看環(huán)境而定)

?????--username? test 用戶名為test

?????--password? test 密碼為test

3、修改權(quán)限

#?chmod?+x??/root/svn_update.sh

4、配置計劃任務

因腳本無法實現(xiàn)自動執(zhí)行,故配置計劃任務設(shè)置每分鐘執(zhí)行一次。

#?crontab??-e *??*??*?*??/root/svn_update.sh??>?/dev/null??2>&1



? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? -----------小歡原創(chuàng)


轉(zhuǎn)載于:https://blog.51cto.com/x1aoxiao/1655046

總結(jié)

以上是生活随笔為你收集整理的Linux CentOS下配置SVN+SVN勾子的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。