首先幽钢,你需要有這些:
一臺已經(jīng)安裝好了的SVN服務(wù)器
一臺客戶的電腦
由于我是在現(xiàn)有的svn服務(wù)器上安裝的酵使,遂就略去了SVN安裝的過程袭异,現(xiàn)在我整理下大致的思路:
=>svnadmin創(chuàng)建工程
=>配置所創(chuàng)建工程下的authz passwd svnserve.conf
=>殺進(jìn)程,重啟SVN服務(wù)
=>測試新建立的工程(包括權(quán)限認(rèn)證,文件提交和更新)
1惑淳、先找到svn工程目錄
2额港、進(jìn)去工程目錄/data/www/svn,svnadmin命令創(chuàng)建一個工程:
工程已經(jīng)創(chuàng)建成功了,(在ps:即使不熟悉請不要用復(fù)制的方式去創(chuàng)建svn工程歧焦,切記!) 現(xiàn)在進(jìn)入文件夾移斩,可以看到一些默認(rèn)的文件和文件夾:
conf:放置當(dāng)前工程的配置文件,權(quán)限訪問控制等等
目錄說明:
db:記錄用戶提價的版本绢馍、緩存向瓷、db配置等,本身也是個sqlLite數(shù)據(jù)庫
format:一個文件舰涌,默認(rèn)為空猖任,用途暫不
hooks:放置自動提交和更細(xì)腳本,及相關(guān)配置
locks:顧名思義就是鎖瓷耙,代碼被鎖住了朱躺,可以在這里進(jìn)行解鎖操作
README.txt:工程的介紹文檔刁赖,建議新建工程后都更新下
3、因為我的目的是在拉取代碼時就做一次權(quán)限認(rèn)證长搀,防止惡意用戶窺測宇弛,遂,現(xiàn)在我們進(jìn)入conf里面配置相關(guān)權(quán)限源请,conf目錄目前有這些文件:
命令: vi passwd ,現(xiàn)在可以看到svn給了我們1個例子 liey這個用戶枪芒,現(xiàn)在我們需要添加我們的用戶,大致格式是 :用戶名 = 密碼谁尸,#是注釋舅踪,請不要以#開始命名用戶
如圖,用戶組的配置需要在[group]標(biāo)簽下配置良蛮,你可以自定義一個用戶組硫朦,比如這里的admin,用戶組的用戶均以逗號隔開,且用戶必須在剛才的passwd文件中配置過的用戶(不可使用中文作為用戶名)背镇,用戶組的命名方式為: 用戶組名 = 用戶1,用戶2,用戶3 ,用戶組定義完成泽裳,現(xiàn)在需要對每一個用戶組賦予不同的讀寫權(quán)限瞒斩,大致格式是這樣: @用戶組名 = 讀寫權(quán)限 ,這個讀寫權(quán)限常用的有兩個:rw->讀寫涮总,r->只讀胸囱。
用戶組配置完成,現(xiàn)在需要配置svn服務(wù)引用瀑梗,命令: vi svnserve.conf
額烹笔,主要操作就是把除了上面兩個的其它配置參數(shù)全部用#注掉,對于保留的這兩個參數(shù)抛丽,我解釋下:
anon-access = none :將匿名用戶的權(quán)限置為空或者像我那樣只讀都可以
password-db = passwd :引用權(quán)限用戶信息為passwd文件
如果有需要的可以重啟svn谤职,需要找到重啟的svn進(jìn)程,請注意重啟時需要在svn工程目錄外側(cè)執(zhí)行命令
命令:
查找svn進(jìn)程服務(wù):ps -ef|grep svnserve
殺掉進(jìn)程: kill -9 進(jìn)程ID
啟動svn: svnserve -d -r 目錄名
可以看到亿鲜,svn的啟動命令已經(jīng)在查找的進(jìn)程中給出了允蜈,當(dāng)然這里如果不是在svn工程列表目錄外部操作,請一定注意啟動命令后面的目錄地址蒿柳。
現(xiàn)在測試:
1饶套、在本地項目checkout工程(之后需要輸入密碼),然后添加并提交到服務(wù)器
2、到linux中你需要的目錄下svn checkout svn://服務(wù)器IP或域名/工程目錄(我這里是tgRsync) --username 用戶名垒探,發(fā)現(xiàn)文件可以同步過來
添加文件:
svn add 文件名
提交文件(含備注):
svn commit -m "備注內(nèi)容" 文件名
更新文件(需要制定版本):
svn update -r 修正版本 文件名