VisualSVN Server的配置和使用方法 圖文
1.為什么要用VisualSVN Server,而不用Subversion?
回答:
因?yàn)槿绻苯邮褂肧ubversion,那么在Windows 系統(tǒng)上,要想讓它隨系統(tǒng)啟動(dòng),就要封裝SVN Server為windws service,還要通過(guò)修改配置文件來(lái)控制用戶(hù)權(quán)限,另外如果要想以Web方式【http協(xié)議】訪問(wèn),一般還要安裝配置Apache,如果是新手,豈不是很頭痛?而VisualSVN Serve集成了Subversion和Apache,省去了以上所有的麻煩。安裝的時(shí)候SVN Server已經(jīng)封裝為windws service,Apache服務(wù)器的配置也只是在圖像界面上,指定認(rèn)證方式、訪問(wèn)端口等簡(jiǎn)單操作;另外,用戶(hù)權(quán)限的管理也是通過(guò)圖像界面來(lái)配置。
2.為什么不用TFS?
回答:
因?yàn)槲覀円婚_(kāi)始就是用Subversion和TortioseSVN,所以就沒(méi)有更換其他的軟件。至于TFS至今沒(méi)有用過(guò),其實(shí),我只是看了一些的文章而已,對(duì)它也不了解。
3.VisualSVN Server是免費(fèi)的嗎?
回答:
是的,VisualSVN Server是免費(fèi)的,而VisualSVN是收費(fèi)的。VisualSVN是SVN的客戶(hù)端,和Visual Studio集成在一起, VisualSvn Server是SVN的服務(wù)器端,包括Subversion、Apache和用戶(hù)及權(quán)限管理,優(yōu)點(diǎn)在上面已經(jīng)說(shuō)過(guò)了。
好了,言歸正傳,正式開(kāi)始我們今天的教程。
一、VisualSVN Server的配置和使用方法【服務(wù)器端】
安裝好VisualSVN Server后【安裝過(guò)程看這里】,運(yùn)行VisualSVN Server Manger,下面是啟動(dòng)界面:
好的,下面我來(lái)添加一個(gè)代碼庫(kù)【Repository】,如下圖:
按上圖所示,創(chuàng)建新的代碼庫(kù),在下圖所示的文本框中輸入代碼庫(kù)名稱(chēng):
注意:上圖中的CheckBox如果選中,則在代碼庫(kù)StartKit下面會(huì)創(chuàng)建trunk、branches、tags三個(gè)子目錄;不選中,則只創(chuàng)建空的代碼庫(kù)StartKit。
點(diǎn)擊OK按鈕,代碼庫(kù)就創(chuàng)建成功了。
創(chuàng)建完代碼庫(kù)后,沒(méi)有任何內(nèi)容在里面。我會(huì)在這個(gè)教程的第二部分說(shuō)明如何遷入源代碼。
下面,我們開(kāi)始安全性設(shè)置,在左側(cè)的Users上點(diǎn)擊右鍵:
輸入上面的信息,點(diǎn)擊OK,我們就創(chuàng)建一個(gè)用戶(hù)了。按照上面的過(guò)程,分別添加用戶(hù)Developer1、tester1、manager1,好了,我們開(kāi)始添加這些用戶(hù)到我們剛才創(chuàng)建的項(xiàng)目里:
點(diǎn)擊上圖中的"Add..."按鈕,在下圖中選擇我們剛才添加的用戶(hù),點(diǎn)擊OK按鈕:
說(shuō)明:大家可能注意到了下圖中的Groups,是的,你也可以先創(chuàng)建組,把用戶(hù)添加到各個(gè)組中,然后對(duì)組進(jìn)行授權(quán),操作比較簡(jiǎn)單,在此略過(guò)。
按照下圖所示,分別對(duì)用戶(hù)【或組】進(jìn)行授權(quán):
點(diǎn)擊"確定"按鈕,上面的用戶(hù)就具有了訪問(wèn)StartKit代碼庫(kù)的不同權(quán)限。
因?yàn)橛脩?hù)starter在團(tuán)隊(duì)中是新來(lái)者,不希望他向代碼庫(kù)中提交新代碼,所以他只能讀取代碼庫(kù)中的代碼,不能提交代碼。tester1是測(cè)試人員,不負(fù)責(zé)代碼編寫(xiě),所以也是只讀權(quán)限。而Developer1和manager1是開(kāi)發(fā)人員和項(xiàng)目經(jīng)理,自然具有讀、寫(xiě)的權(quán)限。
在實(shí)際的項(xiàng)目開(kāi)發(fā)過(guò)程中,Developer和tester往往不可能只有一個(gè)人,這時(shí)候使用組來(lái)授權(quán)更加方便,這個(gè)大家可以自己練習(xí)一下。
二、TotoiseSVN的基本使用方法
在 項(xiàng)目管理實(shí)踐教程一、工欲善其事,必先利其器【Basic Tools】中,我已經(jīng)講解了怎樣安裝TortoiseSVN。在上面的講解中已經(jīng)講了怎么使用VisualSVN Server了,今天我要講的是,TortoiseSVN的簡(jiǎn)單使用方法。
一、簽入源代碼到SVN服務(wù)器
假如我們使用Visual Studio在文件夾StartKit中創(chuàng)建了一個(gè)項(xiàng)目,我們要把這個(gè)項(xiàng)目的源代碼簽入到SVN Server上的代碼庫(kù)中里,首先右鍵點(diǎn)擊StartKit文件夾,這時(shí)候的右鍵菜單如下圖所示:
圖2-2-1
點(diǎn)擊Import,彈出下面的窗體,其中http://zt.net.henu.edu.cn 是服務(wù)器名,svn是代碼倉(cāng)庫(kù)的根目錄,StartKit是我們?cè)谏蟼€(gè)教程中添加的一個(gè)代碼庫(kù):
說(shuō)明:左下角的CheckBox,在第一次簽入源代碼時(shí)沒(méi)有用,但是,在以后你提交代碼的時(shí)候是非常有用的。
圖2-2-2
點(diǎn)擊OK按鈕,會(huì)彈出下面的窗體,要求輸入憑據(jù):
圖2-2-3
在上面的窗體中輸入用戶(hù)名和密碼,點(diǎn)擊OK按鈕:
圖2-2-4
如上圖所示,好了,源代碼已經(jīng)成功簽入SVN服務(wù)器了。這時(shí)候團(tuán)隊(duì)成員就可以遷出SVN服務(wù)器上的源代碼到自己的機(jī)器了。
二、簽出源代碼到本機(jī)
在本機(jī)創(chuàng)建文件夾StartKit,右鍵點(diǎn)擊Checkout,彈出如下圖的窗體:
圖2-2-5
在上圖中URL of Repository:下的文本框中輸入svn server中的代碼庫(kù)的地址,其他默認(rèn),點(diǎn)擊OK按鈕,就開(kāi)始簽出源代碼了。
說(shuō)明:上圖中的Checkout Depth,有4個(gè)選項(xiàng),分別是遷出全部、只簽出下一級(jí)子目錄和文件、只簽出文件、只簽出空項(xiàng)目,默認(rèn)的是第一項(xiàng)。上面的例子中,我們也可以使用web的方式訪問(wèn)代碼庫(kù),在瀏覽器中輸入http://zt.net.henu.edu.cn/svn/StartKit/
這時(shí)候也會(huì)彈出對(duì)話框,要求輸入用戶(hù)名和密碼,通過(guò)驗(yàn)證后即可瀏覽代碼庫(kù)中的內(nèi)容。
搞定!源代碼已經(jīng)成功簽出到剛才新建的StartKit目錄中。
打開(kāi)StartKit目錄,可以看到如下圖的文件夾結(jié)構(gòu):
圖2-2-5
一旦你對(duì)文件或文件夾做了任何修改,那么文件或文件夾的顯示圖片機(jī)會(huì)發(fā)生變化。下圖中我修改了其中的二個(gè)文件:
圖2-2-7
大家看一下不同狀態(tài)所對(duì)應(yīng)的圖片:
圖2-2-8
我們已經(jīng)知道怎么將源代碼簽入到SVN服務(wù)器,怎么從服務(wù)器簽出代碼到本機(jī),也簡(jiǎn)單了解了不同狀態(tài)所對(duì)應(yīng)的圖案啦。
三、提交修改過(guò)的文件到SVN服務(wù)器
上面的圖2-2-7中,我修改了位于Model文件中的二個(gè)文件ImageInfo.cs和NewsInfo.cs,下面演示如何提交到SVN服務(wù)器。
注意:提交源代碼到服務(wù)器時(shí),一定確保本機(jī)的代碼是最新版本,否則可能提交失敗,或者造成版本沖突。
在Model文件夾上點(diǎn)擊右鍵或在Model文件下的空白處點(diǎn)擊右鍵,點(diǎn)擊SVN Commit…彈出下面的窗體:
圖2-2-9
點(diǎn)擊OK按鈕后,彈出如下圖的窗體:
圖2-2-10
四、添加新文件到SVN服務(wù)器
我們?cè)贛odel文件下添加一個(gè)新的類(lèi)文件UserInfo.cs,在Model文件下的空白處點(diǎn)擊右鍵,點(diǎn)擊SVN Commit…,和上面講的提交修改過(guò)的文件到SVN服務(wù)器一樣,就可以了。
另外也可以在文件UserInfo.cs上點(diǎn)擊右鍵,點(diǎn)擊TortoiseSVN=>>Add,彈出如下圖的窗體:
圖2-2-11
選中UserInfo.cs文件,點(diǎn)擊OK按鈕,這樣并沒(méi)有將這個(gè)文件提交到SVN服務(wù)器,只是將這個(gè)文件標(biāo)記為源代碼庫(kù)庫(kù)中的文件,并將其狀態(tài)置為修改狀態(tài)。之后,我們要再SVN Commit這個(gè)文件一次,才可以將其真正提交到SVN服務(wù)器上的代碼庫(kù)中。
上面講是添加文件,實(shí)際上,添加文件夾的步驟也是一樣的,這里就不說(shuō)了。
五、更新本機(jī)代碼與SVN服務(wù)器上最新的版本一致
這個(gè)也很簡(jiǎn)單,只要在需要更新的文件夾上點(diǎn)擊右鍵或在該文件下的空白處點(diǎn)擊右鍵,點(diǎn)擊SVN Update,就可以了。
注意:更新操作可能會(huì)因?yàn)榘姹緵_突而失敗,這是可以使用合并【Merge】或其他方法解決;也可能因?yàn)殒i定【Get Lock】而失敗,這是需要先解鎖【Release Lock】。
六、重命名文件或文件夾,并將修改提交到SVN服務(wù)器
只要在需要重命名的文件或文件夾上點(diǎn)擊右鍵,點(diǎn)擊TortiseSVN=>>Rename…,在彈出的窗體中輸入新名稱(chēng),點(diǎn)擊OK按鈕,就可以了。此方法也不是直接重命名,而是將該文件或文件夾的名稱(chēng)標(biāo)記為重命名后名稱(chēng),也需要我們使用SVN Commit提交到SVN服務(wù)器后才真正重命名。
七、刪除文件或文件夾,并將修改提交到SVN服務(wù)器
最簡(jiǎn)單就是,你直接刪除文件或文件夾,然后使用SVN Commit提交更新到SVN服務(wù)器。另外一種方法是在你要?jiǎng)h除的文件或文件夾上點(diǎn)擊右鍵=>>TortoiseSVN=>>Delete刪除,此方法也不是直接刪除,而是將該文件或文件夾的狀態(tài)置為刪除,也需要我們使用SVN Commit提交到SVN服務(wù)器后才真正刪除。
說(shuō)明:實(shí)際上,從你把源代碼遷簽入SVN服務(wù)器開(kāi)始,每一個(gè)版本的數(shù)據(jù)和文件,就算是你已經(jīng)刪除了的,也都可以隨時(shí)遷出。
以上只是TortoiseSVN最簡(jiǎn)單的幾個(gè)功能,其實(shí)他的功能遠(yuǎn)不止這些,其他的功能大家可以在使用的過(guò)程中慢慢體會(huì),有些功能我會(huì)在下面的教程中使用到,到時(shí)候會(huì)和大家講清楚用法。
注意:向SVN服務(wù)器提交源代碼的時(shí)候,一定不要提交bin、obj等文件夾,否則會(huì)很麻煩。但是web項(xiàng)目的bin目錄除外,但是web項(xiàng)目的bin目錄中的引用其他項(xiàng)目而生成的dll不需要提交。
一個(gè)好習(xí)慣:如果項(xiàng)目中引用了其他的第三方的程序集,比如EnterpriseLibrary、FCKEditor等,這時(shí)候不要簡(jiǎn)單從他們的安裝位置引用,而是在你的解決方案下,添加一個(gè)Library的目錄,把需要的程序集復(fù)制到這里,然后從Library目錄引用,這樣有什么好處,自己想一想吧!
如果大家有什么問(wèn)題,盡管跟帖提問(wèn),我一定及時(shí)回答。
好了,今天就先寫(xiě)到這里吧,本來(lái)說(shuō)這部分準(zhǔn)備寫(xiě)一篇Blog,可是現(xiàn)在寫(xiě)了這么長(zhǎng),還只是說(shuō)了一點(diǎn)很基本的東西而已,呵呵……
如果你對(duì)我講解的這些內(nèi)容不熟悉,建議你從頭開(kāi)始看這個(gè)系列的教程:項(xiàng)目管理實(shí)踐系列教程。
- Mac環(huán)境下搭建svn環(huán)境和使用方法
- Linux svn的搭建與使用(圖文詳解)
- centos6.5下svn的使用說(shuō)明
- 使用AndroidStudio上傳忽略文件至SVN Server的解決辦法
- Android Studio與SVN版本控制程序的協(xié)作使用指南
- TortoiseSVN使用教程
- 圖解SVN服務(wù)器搭建和使用(一)
- Linux下SVN服務(wù)器同時(shí)支持Apache的http和svnserve獨(dú)立服務(wù)器兩種模式且使用相同的訪問(wèn)權(quán)限賬號(hào)
- 使用PHP編寫(xiě)的SVN類(lèi)
- SVN使用教程_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
相關(guān)文章
不錯(cuò)的服務(wù)器變慢的兩種非常規(guī)解決辦法
不錯(cuò)的服務(wù)器變慢的兩種非常規(guī)解決辦法...2007-09-09Windows服務(wù)器的基礎(chǔ)安全加固方法(2008、2012)
為了安全地使用Windows云主機(jī),建議應(yīng)用如下幾個(gè)簡(jiǎn)單的安全加固措施。雖然簡(jiǎn)單,但是已足夠防御大部分較常見(jiàn)的安全風(fēng)險(xiǎn)2016-09-09正確面對(duì)服務(wù)器數(shù)據(jù)存儲(chǔ)防止數(shù)據(jù)丟失
服務(wù)器數(shù)據(jù)存儲(chǔ)安全是保障服務(wù)器正常運(yùn)行的重要的環(huán)節(jié),同時(shí)也是企業(yè)網(wǎng)絡(luò)信息化建設(shè)的核心。2009-02-02騰訊云Windows云服務(wù)器自建Sql?Server限制內(nèi)存的操作步驟
使用騰訊云Windows云服務(wù)器安裝SQL?SERVER數(shù)據(jù)庫(kù),在我們使用的過(guò)程中,有時(shí)候在任務(wù)管理器發(fā)現(xiàn)SQL?SERVE的進(jìn)程占用很高的內(nèi)存和CPU,本文介紹如何限制SQL?SERVER內(nèi)存占用,需要的朋友可以參考下2023-08-08win2003禁止用戶(hù)遠(yuǎn)程登錄的設(shè)置方法
有時(shí)候我們需要新增加一些用戶(hù),又怕被黑客利用,我們就可以設(shè)置禁止這些用戶(hù)登錄服務(wù)器2013-09-09Windows server 部署iSCSI共享磁盤(pán)搭建故障轉(zhuǎn)移群集
本文主要介紹了Windows server 部署iSCSI共享磁盤(pán)搭建故障轉(zhuǎn)移群集,通過(guò)簡(jiǎn)潔明了的步驟和實(shí)用建議,幫助順利完成iSCSI的配置與使用,感興趣的可以了解一下2024-01-01IIS環(huán)境下PHP rewrite重寫(xiě)設(shè)置(支持中文參數(shù))
這篇文章主要介紹了IIS環(huán)境下PHP重寫(xiě)設(shè)置 支持中文參數(shù),需要的朋友可以參考下2014-06-06IIS啟用GZIP壓縮js、css無(wú)效的原因及解決方法
IIS啟用GZIP壓縮之后,原以為可以壓縮所有文件了,包括html、CSS、JS、圖片這些文件,但是當(dāng)我檢查的時(shí)候,發(fā)現(xiàn)并不是這樣的,壓縮的只有html文件,而CSS、JS并沒(méi)有壓縮2013-11-11