佳木斯湛栽影视文化发展公司

主頁(yè) > 知識(shí)庫(kù) > Linux SVN客戶端使用以及服務(wù)器配置教程

Linux SVN客戶端使用以及服務(wù)器配置教程

熱門標(biāo)簽:硅谷的囚徒呼叫中心 電話機(jī)器人搭建 外呼系統(tǒng) 美團(tuán) 家政服務(wù)網(wǎng)絡(luò) 百度競(jìng)價(jià)點(diǎn)擊價(jià)格的計(jì)算公式 服務(wù)器配置 解決方案
SVN是一種版本管理系統(tǒng),前身是CVS,是開源軟件的基石。即使在溝通充分的情況下,多人維護(hù)同一份源代碼的一定也會(huì)出現(xiàn)混亂的情況,版本管理系統(tǒng)就是為了解決這些問題。SVN中的一些概念 : a. repository(源代碼庫(kù)) 源代碼統(tǒng)一存放的地方 b. Checkout (提?。?當(dāng)你手上沒有源代碼的時(shí)候,你需要從repository checkout一份 c. Commit (提交) 當(dāng)你已經(jīng)修改了代碼,你就需要Commit到repository d. Update (更新) 當(dāng)你已經(jīng)Checkout了一份源代碼, Update一下你就可以和Repository上的源代碼同步,你手上的代碼就會(huì)有最新的變更日常開發(fā)過程其實(shí)就是這樣的(假設(shè)你已經(jīng)Checkout并且已經(jīng)工作了幾天):Update(獲得最新的代碼) -->作出自己的修改并調(diào)試成功 --> Commit(大家就可以看到你的修改了) 如果兩個(gè)程序員同時(shí)修改了同一個(gè)文件呢?SVN可以Merge這兩個(gè)程序員的改動(dòng),對(duì),合并,實(shí)際上SVN管理源代碼是 以行為單位的,就是說兩個(gè)程序員只要不是修改了同一行程序,SVN都會(huì)自動(dòng)合并兩種修改。如果是同一行呢,SVN會(huì)提示文件Confict, 沖突,需要手動(dòng)確認(rèn)。 TortoiseSVN簡(jiǎn)介 TortoiseSVN 是 Subversion 版本控制系統(tǒng)的一個(gè)免費(fèi)開源客戶端,可以超越時(shí)間的管理文件和目錄。文件保存在中央版本庫(kù),除了能記住文件和目錄的每次修改以外,版本庫(kù)非常像普通的文件 服務(wù)器。你可以將文件恢復(fù)到過去的版本,并且可以通過檢查歷史知道數(shù)據(jù)做了哪些修改,誰(shuí)做的修改。這就是為什么許多人將 Subversion 和版本控制系統(tǒng)看作一種“時(shí)間機(jī)器”。

SVN的配置
1,配置好yum,檢查subversion安裝包 [root@svn ~]# yum list |grep subversion subversion.i386 1.4.2-4.el5_3.1 base subversion-devel.i386 1.4.2-4.el5_3.1 base
subversion-javahl.i386 1.4.2-4.el5_3.1 base
subversion-perl.i386 1.4.2-4.el5_3.1 base
subversion-ruby.i386 1.4.2-4.el5_3.1 base
[root@svn ~]# yum -y install subversion 測(cè)試安裝是否成功:
svnserve --version 回車顯示版本說明安裝成功
[root@svn ~]# netstat –nat 查看默認(rèn)TCP 3690端口是否監(jiān)聽.
2,創(chuàng)建svn版本庫(kù) [root@svn /]# mkdir -p /data/svndata [root@svn /]# svnadmin create /data/svndata/winne winne為版本庫(kù)名稱
3,svnserve配置文件概述 svnserve.conf -- svn服務(wù)配置文件,該文件版本庫(kù)目錄的conf目錄下。 passwd -- 用戶名口令文件,該文件名在文件svnserve.conf中指定,缺省為同目錄下的。 authz -- 權(quán)限配置文件,該文件名也在文件svnserve.conf中指定,缺省為同目錄下的。

conf/svnserve.conf 文件
配置項(xiàng)分為以下5項(xiàng): anon-access 控制非鑒權(quán)用戶訪問版本庫(kù)的權(quán)限。 auth-access 控制鑒權(quán)用戶訪問版本庫(kù)的權(quán)限。 password-db 指定用戶名口令文件名。 authz-db 指定權(quán)限配置文件名,通過該文件可以實(shí)現(xiàn)以路徑為基礎(chǔ)的訪問控制。 realm 指定版本庫(kù)的認(rèn)證域,即在登錄時(shí)提示的認(rèn)證域名稱。若兩個(gè)版本庫(kù)的 認(rèn)證域相同,建議使用相同的用戶名口令數(shù)據(jù)文件
注:1.4版本anon-access = read 參數(shù)的bug . anon-access = read時(shí) 客戶端Checkout(提取)的時(shí)候會(huì)有Not authorized to open root of edit operation"錯(cuò)誤,改為none參數(shù)正常, conf /Passwd 文件 user1 = user1 user2 = user2
conf /authz 文件 [groups] 設(shè)置組 admin = user1 [/] 根目錄權(quán)限設(shè)置(就是“svndata”這個(gè)文件夾) user1 = rw 用戶1權(quán)限是:可讀寫 user2 = r 用戶2權(quán)限是:可讀,不可寫 @admin = rw 設(shè)置組權(quán)限 [svndata:/winne] 設(shè)置根目錄下“winne”文件夾的權(quán)限 user1 = rw user2 = r …以此類推
4,啟動(dòng)和停止SVN服務(wù) 啟動(dòng)SVN服務(wù): [root@svn ~]# svnserve -d -r /data/svndata/ -d表示后臺(tái)運(yùn)行 -r 指定根目錄是 /data/svndata/ 停止SVN服務(wù): ps -aux |grep svn kill -9 進(jìn)程殺掉

客戶端使用Windows客戶端TortoiseSVN的使用
1, TortoiseSVN 客戶端的安裝
測(cè)試選擇的是TortoiseSVN 1.6.5客戶端 付中文漢化包.
2,客戶端的文件更新至服務(wù)器(user1操作) 新建一個(gè)空目錄,右鍵Checkout (提取) svn://192.168.103.26/winne 輸入passwd文件中的授權(quán)用戶帳號(hào)就可以了
在目錄中加入一些文件測(cè)試. 然后在空白地方右鍵點(diǎn)TortoiseSVN-> ADD 添加列表到服務(wù)器端.此時(shí)并沒有真正拷貝到服務(wù)器上,需再在Commit(提交)操作才會(huì)拷貝
在版本庫(kù)瀏覽器中就可以看到剛才提交的文件了,此時(shí)提交的版本為1.
3,客戶端在服務(wù)器上拉讀取數(shù)據(jù)(user2操作) User2 在機(jī)器上新建一個(gè)空目錄user2 , 右鍵Checkout (提?。?填入地址: svn://192.168.103.26/winne 輸出至G:\user2 確定 增加一個(gè)new.txt的文件,然后Commit (提交)之后提示權(quán)限出錯(cuò),user2沒有寫的權(quán)限,換成user1 的身份才可以提交成功.
Linux客戶端的使用 客戶端操作流程一般是: 用戶A: checkout (提取) -> add (添加新文件) -> commit (提交) 用戶B: SVN log(查看更新) -> update(更新版本) 1,SVN的安裝 yun –y install subversion 2,Linux svn的常用命令 ()內(nèi)為命令簡(jiǎn)寫. checkout (co) 提取 commit (ci) 提交 update (up) 更新 list (ls) 列表
3, checkout (co) 提取 svn服務(wù)器上的文件 (user1)操作流程 [root@TEST ~]# svn co svn://192.168.103.26/winne Authentication realm: My First Repository Password for 'root':
Authentication realm: My First Repository Username: user1 /輸入用戶名 Password for 'user1': /輸入密碼 A winne/Cosmic Ride - BeFour.lrc A winne/20070716171657126.pdf A winne/svnbook.pdf revision 1. / checkout (co) 提取成功,看到Checked out版本為1 注:可以使用帶用戶名和密碼的訪問: svn co --username user1 --password user1 svn://192.168.103.26/winne [root@TEST ~]# ll drwxr-xr-x 3 root root 4096 Sep 23 09:02 winne /winne目錄是SVN自動(dòng)生成的 drwxr-xr-x 2 root root 4096 Jul 30 02:06 tasks [root@TEST ~]# cd winne [root@TEST winne]# ll total 2868 -rw-r--r-- 1 root root 1566968 Sep 23 08:53 20070716171657126.pdf -rw-r--r-- 1 root root 2397 Sep 23 08:53 Cosmic Ride - BeFour.lrc -rw-r--r-- 1 root root 1354300 Sep 23 08:53 svnbook.pdf
4,user1修改文件并提交 [root@TEST winne]# vi testsvn.txt [root@TEST winne]# svn add testsvn.txt /將testsvn.txt添加到庫(kù)中 A testsvn.txt [root@TEST winne]# svn commit -m "test" testsvn.txt /注釋為test Adding testsvn.txt Transmitting file data . Committed revision 2. /版本更新為2了
5,user2回window客戶端更新版本 回到Windows的客戶端看日志, 版本已經(jīng)更新為2了,注釋test,客戶端update就可以更新到新的版本了.
6, Windows客戶端的版本回滾 選中菜單中的update to verisiom ,選擇版本1即可.
7,Linux版本回滾操作: [root@TEST winne]# svn up -r 1

標(biāo)簽:臨沂 韶關(guān) 邢臺(tái) 防城港 烏蘭察布 北海 南昌 撫州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Linux SVN客戶端使用以及服務(wù)器配置教程》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    黎平县| 偃师市| 吉水县| 临漳县| 泊头市| 甘肃省| 天全县| 方正县| 永德县| 迁安市| 沂南县| 泸西县| 利辛县| 镇远县| 永清县| 江西省| 镇赉县| 康乐县| 婺源县| 伊金霍洛旗| 屏南县| 河间市| 南城县| 武汉市| 灯塔市| 固阳县| 中卫市| 长汀县| 兴安盟| 巫溪县| 吉隆县| 攀枝花市| 新营市| 西林县| 城固县| 嘉定区| 永昌县| 太原市| 泸水县| 嘉定区| 息烽县|