Cent OS 配置svn

Centos搭建SVN服務(wù)器及配置文件

查端口

ps -ef|grep svn|grep -v grep

1、安裝

yum install subversion

判斷是否安裝成功码荔,yum安裝結(jié)束時會顯示版本

svnserve, version 1.6.11 (r934486)

出現(xiàn)上面的提示,說明安裝成功感挥。

有了SVN軟件后還需要建立SVN庫缩搅。

mkdir -p /opt/svn/repos
svnadmin create /opt/svn/repos

執(zhí)行上面的命令后,自動在repos下建立多個文件触幼, 分別是conf, db,format,hooks, locks, README.txt硼瓣。

2、配置

上面的操作很簡單置谦,幾個命令就搞定, 下面的操作也不難堂鲤。
進入上面生成的文件夾conf下亿傅,進行配置, 有以下幾個文件authz, passwd, svnserve.conf
其中authz 是權(quán)限控制,可以設(shè)置哪些用戶可以訪問哪些目錄, passwd是設(shè)置用戶和密碼的, svnserve是設(shè)置svn相關(guān)的操作瘟栖。

快捷鍵-快速刪除文件所有內(nèi)容
在還不是插入模式時葵擎,
shift+v,
shift+g,
shift+g,
全選所有內(nèi)容慢宗,最后delete鍵就可以了

2.1先設(shè)置passwd

[users]
# harry = harryssecret
# sally = sallyssecret
hello=123
#用戶名=密碼

這樣我們就建立了hello用戶坪蚁, 123密碼

2.2 再設(shè)置權(quán)限authz

[groups]
admin=hello
[/]
hello=rw
* = r

權(quán)限只配置用戶名即可奔穿,把hello用戶更改為自己的用戶名就行了镜沽。

意思是hello用戶對所有的目錄有讀寫權(quán)限,當(dāng)然也可以限定贱田。
如果是自己用缅茉,就直接是讀寫吧。

2.3最后設(shè)定snvserv.conf(直接復(fù)制general那里的就可以了男摧,不需要修改)

anon-access = none # 使非授權(quán)用戶無法訪問
auth-access = write # 使授權(quán)用戶有寫權(quán)限
password-db = passwd
authz-db = authz # 訪問控制文件
realm = /opt/svn/repos #認(rèn)證命名空間
[general]
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz

蔬墩,subversion會在認(rèn)證提示里顯示,并且作為憑證緩存的關(guān)鍵字耗拓。
采用默認(rèn)配置. 以上語句都必須頂格寫, 左側(cè)不能留空格, 否則會出錯.
好了拇颅,通過以上配置,你的svn就可以了乔询。

3樟插、連接

啟動svn:

svnserve -d -r /opt/svn/repos 

如果已經(jīng)有svn在運行,可以換一個端口運行

svnserve -d -r /opt/svn/repos --listen-port 33691

這樣同一臺服務(wù)器可以運行多個svnserver

注:同步到web目錄下
進入hooks目錄(/opt/svn/repos/hooks)下竿刁,復(fù)制post-commit.tmpl 到post-commit

cp post-commit.tmpl post-commit

編輯post-commit文件

vi post-commit

并修改成(那行#!/bin/bash也要復(fù)制)

#!/bin/bash
export LANG="zh_CN.UTF-8"
svn update /var/www/html  --username USER --password PASSWORD

ps:vi編輯器下黄锤,V + GG + D 刪除文件全部內(nèi)容

修改完成后,更改post-commit權(quán)限為755食拜,使得文件有權(quán)限被執(zhí)行

chmod 755 post-commit

設(shè)置好之后鸵熟,在web目錄先checkout一次svn才能同步過來。進入web目錄下

cd /var/www/html    //先進入到該目錄下负甸,才進行初始checkout操作
svn checkout svn://服務(wù)器ip:端口 /var/www/html --username USERNAME --password PASSWORD

過程會詢問授權(quán)流强,按照操作輸入yes 或者y 即可

svnserver修改配置文件后可以立即生效,不需要重啟服務(wù)呻待。

好了煮盼,啟動成功后,就可以使用了。
建議采用TortoiseSVN带污, 連接地址為: svn://your server address (如果指定端口需要添加端口 :端口號)

連接后可以上傳本地的文件僵控,有效的管理你的代碼。
svnserve是SVN自帶的一個輕型服務(wù)器鱼冀,客戶端通過使用以svn://或svn+ssh://為前綴的URL來訪問svnserve服務(wù)器报破,實現(xiàn)遠程訪問SVN版本庫悠就。

svnserve可以通過配置文件來設(shè)置用戶和口令,以及按路徑控制版本庫訪問權(quán)限充易。本文詳細分析了svnserve配置文件格式梗脾,并說明如何使用配置文件控制版本庫訪問權(quán)限。

本文介紹SVN的版本為1.4.4盹靴。

  1. svnserve配置文件概述

svnserve配置文件通常由以下3個文本文件組成:
svn服務(wù)配置文件炸茧,該文件版本庫目錄的conf目錄下,文件名為svnserve.conf稿静。
用戶名口令文件梭冠,該文件名在文件svnserve.conf中指定,缺省為同目錄下的passwd改备。
權(quán)限配置文件控漠,該文件名也在文件svnserve.conf中指定,缺省為同目錄下的authz悬钳。

  1. svn服務(wù)配置文件

svn服務(wù)配置文件為版本庫目錄中的文件conf/svnserve.conf盐捷。該文件僅由一個[general]配置段組成。

[general]配置段中配置行格式如下:
<配置項> = <值>

配置項分為以下5項:

anon-access 控制非鑒權(quán)用戶訪問版本庫的權(quán)限默勾。取值范圍為"write"碉渡、"read"和"none"。
即"write"為可讀可寫母剥,"read"為只讀滞诺,"none"表示無訪問權(quán)限。
缺省值:read

auth-access 控制鑒權(quán)用戶訪問版本庫的權(quán)限媳搪。取值范圍為"write"铭段、"read"和"none"。
即"write"為可讀可寫秦爆,"read"為只讀序愚,"none"表示無訪問權(quán)限。
缺省值:write

password-db 指定用戶名口令文件名等限。除非指定絕對路徑爸吮,否則文件位置為相對conf
目錄的相對路徑。
缺省值:passwd

authz-db 指定權(quán)限配置文件名望门,通過該文件可以實現(xiàn)以路徑為基礎(chǔ)的訪問控制形娇。
除非指定絕對路徑,否則文件位置為相對conf目錄的相對路徑筹误。
缺省值:authz

realm 指定版本庫的認(rèn)證域桐早,即在登錄時提示的認(rèn)證域名稱。若兩個版本庫的
認(rèn)證域相同,建議使用相同的用戶名口令數(shù)據(jù)文件哄酝。
缺省值:一個UUID(Universal Unique IDentifier友存,全局唯一標(biāo)示)。

【說明】版本庫認(rèn)證域
在使用svn客戶端訪問svnserve服務(wù)器時陶衅,若需要用戶登錄屡立,則提示信息如下:
[root@test root]# svn list svn://192.168.3.45/test
Authentication realm: svn://192.168.3.45:3690 0d545a49-4038-0410-99b4-c66dc73f754e
Password for 'root':

在上述第2行"Authentication realm: svn://192.168.3.45:3690"之后顯示的字符串為認(rèn)證域名稱。如果在配置文件中為設(shè)定認(rèn)證域搀军,就會提示一個UUID膨俐,如上述所示。
如果在配置文件中指定了如下配置項:

realm = test
將在svn客戶端提示如下:
[root@test root]# svn list svn://192.168.3.45/test
Authentication realm: svn://192.168.3.45:3690 test
Password for 'root':

例1:svn服務(wù)配置文件conf/svnserve.conf的內(nèi)容如下:
[general]
anon-access = none
auth-access = write
password-db = ../../conf/passwd
authz-db = ../../conf/authz
realm = test

上述配置文件設(shè)定非鑒權(quán)用戶無權(quán)限訪問該版本庫罩句;鑒權(quán)用戶可對版本庫進行讀寫焚刺;用戶名口令文件為相對版本庫conf目錄的文件"../../conf /passwd";權(quán)限配置文件為相對版本庫conf目錄的文件"../../conf/authz"的止;版本庫的認(rèn)證域為"test"檩坚。
www.2cto.com

  1. 用戶名口令文件

用戶名口令文件由svnserve.conf的配置項password-db指定着撩,缺省為conf目錄中的passwd诅福。該文件僅由一個[users]配置段組成。

[users]配置段的配置行格式如下:
<用戶名> = <口令>
注意:配置行中的口令為未經(jīng)過任何處理的明文拖叙。

例2:用戶名口令文件conf/passwd的內(nèi)容如下:
[users]
admin = admin
thinker = 123456

該文件中配置了兩個用戶氓润,用戶名分別為"admin"和"thinker"。其中"admin"用戶的口令為"admin"薯鳍;"thinker"用戶的口令為"123456"咖气。

  1. 權(quán)限配置文件

權(quán)限配置文件由svnserve.conf的配置項authz-db指定,缺省為conf目錄中的authz挖滤。該配置文件由一個[groups]配置段和若干個版本庫路徑權(quán)限段組成崩溪。

[groups]配置段中配置行格式如下:
<用戶組> = <用戶列表>
用戶列表由若干個用戶組或用戶名構(gòu)成,用戶組或用戶名之間用逗號","分隔斩松,引用用戶組時要使用前綴"@"(如:引用用戶組"all"要使用字符串"@all")伶唯。

版本庫路徑權(quán)限段的段名格式如下:
[<版本庫名>:<路徑>]
如版本庫abc路徑/tmp的版本庫路徑權(quán)限段的段名為"[abc:/tmp]"。
可省略段名中的版本庫名惧盹。若省略版本庫名乳幸,則該版本庫路徑權(quán)限段對所有版本庫中相同路徑的訪問控制都有效。如:段名為"[/tmp]"的版本庫路徑權(quán)限段設(shè)置了所有引用該權(quán)限配置文件的版本庫中目錄"/tmp"的訪問權(quán)限钧椰。

版本庫路徑權(quán)限段中配置行格式有如下三種:
<用戶名> = <權(quán)限>
<用戶組> = <權(quán)限>

  • = <權(quán)限>
    其中粹断,"*"表示任何用戶;權(quán)限的取值范圍為''嫡霞、'r'和'rw'瓶埋,''表示對該版本庫路徑無任何權(quán)限,'r'表示具有只讀權(quán)限,'rw'表示有讀寫權(quán)限养筒。
    注意:每行配置只能配置單個用戶或用戶組狡汉。

例3:權(quán)限配置文件conf/authz的內(nèi)容如下:
[groups]
g_admin = admin,thinker

[admintools:/]
@g_admin = rw

  • =

[test:/home/thinker]
thinker = rw

  • = r

在上述配置文件中,定義了一個用戶組"g_admin"闽颇,該用戶組包含用戶"admin"和"thinker"盾戴。然后定義了2個版本庫路徑權(quán)限段。 其中兵多,版本庫"admintools"只有用戶組"g_admin"可讀寫尖啡,其他用戶無任何權(quán)限;版本庫"test"中路徑"/home /thinker"只有用戶"thinker"有讀寫權(quán)限剩膘,其他用戶只有可讀權(quán)限衅斩。

  1. 總結(jié)

在本文中,詳細介紹了svnserve程序的3個配置文件怠褐。SVN管理員可以通過這3個配置文件設(shè)置svnserve服務(wù)的用戶名口令畏梆,以及對版本庫路徑的訪問權(quán)限。這些配置文件保存后就立即生效奈懒,不需要重啟svnserve服務(wù)奠涌。
需要強調(diào)的是本文介紹的配置文件只對svnserve服務(wù)有效,即客戶端通過前綴為svn://或svn+ssh://的URL訪問版本庫有效磷杏,而對通過前綴http://溜畅、https://或file:///的URL無效。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末极祸,一起剝皮案震驚了整個濱河市慈格,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌遥金,老刑警劉巖浴捆,帶你破解...
    沈念sama閱讀 219,110評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異稿械,居然都是意外死亡选泻,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,443評論 3 395
  • 文/潘曉璐 我一進店門溜哮,熙熙樓的掌柜王于貴愁眉苦臉地迎上來滔金,“玉大人,你說我怎么就攤上這事茂嗓〔鸵穑” “怎么了?”我有些...
    開封第一講書人閱讀 165,474評論 0 356
  • 文/不壞的土叔 我叫張陵述吸,是天一觀的道長忿族。 經(jīng)常有香客問我锣笨,道長,這世上最難降的妖魔是什么道批? 我笑而不...
    開封第一講書人閱讀 58,881評論 1 295
  • 正文 為了忘掉前任错英,我火速辦了婚禮,結(jié)果婚禮上隆豹,老公的妹妹穿的比我還像新娘椭岩。我一直安慰自己,他們只是感情好璃赡,可當(dāng)我...
    茶點故事閱讀 67,902評論 6 392
  • 文/花漫 我一把揭開白布判哥。 她就那樣靜靜地躺著,像睡著了一般碉考。 火紅的嫁衣襯著肌膚如雪塌计。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,698評論 1 305
  • 那天侯谁,我揣著相機與錄音锌仅,去河邊找鬼。 笑死墙贱,一個胖子當(dāng)著我的面吹牛热芹,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播嫩痰,決...
    沈念sama閱讀 40,418評論 3 419
  • 文/蒼蘭香墨 我猛地睜開眼剿吻,長吁一口氣:“原來是場噩夢啊……” “哼窍箍!你這毒婦竟也來了串纺?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,332評論 0 276
  • 序言:老撾萬榮一對情侶失蹤椰棘,失蹤者是張志新(化名)和其女友劉穎纺棺,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體邪狞,經(jīng)...
    沈念sama閱讀 45,796評論 1 316
  • 正文 獨居荒郊野嶺守林人離奇死亡祷蝌,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,968評論 3 337
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了帆卓。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片巨朦。...
    茶點故事閱讀 40,110評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖剑令,靈堂內(nèi)的尸體忽然破棺而出糊啡,到底是詐尸還是另有隱情,我是刑警寧澤吁津,帶...
    沈念sama閱讀 35,792評論 5 346
  • 正文 年R本政府宣布棚蓄,位于F島的核電站,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏梭依。R本人自食惡果不足惜稍算,卻給世界環(huán)境...
    茶點故事閱讀 41,455評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望役拴。 院中可真熱鬧糊探,春花似錦、人聲如沸河闰。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,003評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽淤击。三九已至匠抗,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間污抬,已是汗流浹背汞贸。 一陣腳步聲響...
    開封第一講書人閱讀 33,130評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留印机,地道東北人矢腻。 一個月前我還...
    沈念sama閱讀 48,348評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像射赛,于是被迫代替她去往敵國和親多柑。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,047評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 這里首先要注意一點楣责,任何配置文件的有效配置行竣灌,都 不允許存在前置空格 ,否則程序可能會出錯秆麸,給你一個 Option...
    IongX閱讀 2,680評論 1 2
  • SVN自動化 正文共:5007字 預(yù)計閱讀時間:13分鐘 平時自己多用Git來做版本控制初嘹,但很多公司內(nèi)部依舊使用S...
    ayuLiao閱讀 1,292評論 0 0
  • 開發(fā)人員經(jīng)常會上傳代碼,或者改對代碼做一些更改沮趣。svn就是用來將修改后的代碼更新到服務(wù)器上的屯烦。下面就來看一下怎么在...
    stormfu閱讀 4,113評論 1 0
  • 孫麗 焦點網(wǎng)絡(luò)初級十期 信陽堅持分享第57天 媽媽要知道,過度的掌控不是愛房铭。如果孩子認(rèn)為犯錯是一件很糟糕的事情驻龟,那...
    孫麗_cdb3閱讀 89評論 0 0
  • 不知道從何時起開始喜歡上讀書的。 起因是希望自己變得優(yōu)秀一點缸匪,現(xiàn)在看來愿望落空了翁狐,但是買書、讀書卻戒不...
    後知後覺閱讀 342評論 0 1