基于SVN源碼服務(wù)器搭建(詳細(xì)教程分析)
一、引言
筆者曾經(jīng)試圖在網(wǎng)上搜索一篇關(guān)于SVN源代碼服務(wù)器搭建方面的中文技術(shù)文章,可惜,所找到的,要么是不完整,要么就是對筆者沒什么幫助的文章,TortoiseSvn的幫助文檔固然強(qiáng)大,但因?yàn)槭怯⑽?,不是很適合來作為入門者使用;畢竟,TortoiseSvn是一個客戶端,服務(wù)器端的配置也很重要。
一年前,筆者剛剛畢業(yè),初入公司,在進(jìn)行開發(fā)時,由于沒有進(jìn)行軟件代碼版本管理,導(dǎo)致的結(jié)果是
•軟件一天一個版本
•Bug日益增加且隱藏很深
•代碼無法向前回溯
•幾個月前修正過的Bug在幾個月后又重新出現(xiàn)
由于最近公司決定架設(shè)SVN源代碼服務(wù)器,來解決以上問題,故筆者經(jīng)過一段時間的摸索和使用,便有了此文。
二、學(xué)習(xí)本文先決條件
如果作為讀者的你符合以下情況,那么本文可以對你起到一個很大的幫助作用:
•具備基本的軟件開發(fā)知識
•了解Client/Server模型
•正在被日益更新的軟件代碼版本所困擾
本文旨在指導(dǎo)讀者如何利用現(xiàn)有的軟件工具進(jìn)行軟件代碼版本管理工作,如果你對軟件版本控制與管理,維護(hù)與備份較為感興趣,可以閱讀此文來獲取一定的知識。
三、安裝SVN服務(wù)器端軟件
首先,你必須下載兩款軟件包:VisualSVN Server和TortoiseSVN,兩者都是開源軟件,至于在哪里下載,百度或谷歌之,盡量使用最新版就好,我使用的版本如下:
服務(wù)器端:VisualSVN-Server-2.5.5.msi
客戶端:TortoiseSVN-1.7.5.22551-win32-svn-1.7.3.msi
雙擊以下圖標(biāo),打開安裝包:
單擊“Next”
勾選“I accept...”,然后單擊“Next”
選擇第一個“安裝VisualSVN Server(可視化SVN服務(wù)器)”和“Management Console”
Location是你的安裝目錄,C盤或D盤都可以,Repositories是你的源代碼倉庫,也就是你SVN幫你管理代碼放置的位置,這里我選擇放置在D盤根目錄下,將“Use secure connection”復(fù)選框的勾去掉,然后在Server Port中填寫8080(填其他端口號也可以,但是確保該端口號未被占用),在這里不使用安全連接的原因是,它會導(dǎo)致通訊速度減慢(PS:當(dāng)時在公司配置時使用的secure connection,每次Checkout一次要15秒多的時間,無法忍受),然后單擊“Next”:
單擊“Install”
等待……
Finish!
單擊“Finish”后,會啟動VisualSVN Server,可以看到,它的Status是:
VisualSVN Server is running
Server URL is http://motor-109133.hanslaser.com:8080/svn/
至此,服務(wù)器端軟件安裝完畢!
四、SVN服務(wù)器配置項(xiàng)目
右鍵單擊“Repositories”,選擇“Create New Repository...”
在“Repository Name”下方文本框填入“TestSvn”(作為測試用),將“Create default structure(trunk,branches,tags)”選項(xiàng)勾選上,單擊OK
可以看到在Repositories樹下面,有一個TestSvn庫,這個TestSvn庫中有三個文件夾:
branches(分支,修改特殊功能或者新功能的分支代碼,可與主干進(jìn)行合并)tags(標(biāo)記,設(shè)定milestone版本)trunk(主干,存放當(dāng)前正在編輯的代碼工程)
開始新建用戶(用戶組管理請各位自己研究),右鍵單擊“Users”,選擇“Create User...”
在“Create New User”對話框中填寫賬號密碼,如圖所示:
可以看到Users文件夾下面有了一個用戶:
記得將Repositories倉庫的屬性修改一下,因?yàn)樗J(rèn)的屬性是Everyone Read/Write,意思是任何人都可以對該庫中的內(nèi)容進(jìn)行讀寫,現(xiàn)在我們要將其修改成Everyone No Access,然后再自己添加用戶,給予用戶讀或?qū)懙哪芰?,右鍵單擊“Repositories”,選擇“Properties”:
選中“Everyone”,然后勾選“No Access”:
現(xiàn)在開始為TestSvn添加一個用戶,也就是剛剛添加的賬號:zhengshuo,右鍵單擊“TestSvn”,選擇“Properties...”:
單擊“Add...”,選擇Users下的zhengshuo,單擊OK
這樣用戶zhengshuo就被添加到TestSvn項(xiàng)目中(即目前只有zhengshuo才有對TestSvn的讀寫權(quán)利):
五、安裝SVN客戶端軟件
雙擊如下安裝包:
單擊“Next”
選擇“I accept...”,單擊“Next”
選擇安裝目錄,單擊“Next”:
開始Install:
Wait...
安裝完畢!
六、從SVN服務(wù)器簽出工程代碼
在任意一個位置建立一個文件夾TestSvn,比如說D盤,右鍵單擊該文件夾,選擇“SVN Checkout...”
填寫好“URL of Repository”,格式是http://你電腦的IP地址:8080/svn/TestSvn,端口號是之前設(shè)置好的8080,IP地址填寫你當(dāng)前電腦的IP地址,然后單擊OK:
SVN會提示輸入賬號密碼進(jìn)行驗(yàn)證,因?yàn)閦hengshuo這個賬號在服務(wù)器中已經(jīng)添加,所以可以用該賬號進(jìn)行登錄:
驗(yàn)證成功后,會提示“Checkout Finished!”:
七、向SVN服務(wù)器簽入工程代碼
第一次簽出會獲得當(dāng)前項(xiàng)目TestSvn中的目錄結(jié)構(gòu),即branches,tags和trunk:
我們的代碼要放在trunk(主干)文件夾中,代碼如下:
右鍵單擊TestSvn文件夾,選擇“SVN Commit...”
填寫好上傳理由Message,單擊OK
提示“Commit Finished!”
八、后記
本文講述的內(nèi)容雖然較為簡單,但是,它卻給了初學(xué)者一個最佳的切入點(diǎn),讓初學(xué)者能夠在最短的時間內(nèi),對SVN源代碼服務(wù)器的搭建和初步使用有一個通盤的了解。
通過對SVN源碼服務(wù)器的搭建,也讓我明白了軟件代碼版本管理的重要性,正所謂君子善假于物也,我們作為一個合格的軟件工程師,要善于合理利用身邊一切可以利用的資源,來優(yōu)化我們的工作環(huán)境,提高工作效率,為公司為自己寫出Bug較少的完美軟件。
上一篇:利用ace的ACE_Task等類實(shí)現(xiàn)線程池的方法詳解
欄 目:C語言
下一篇:C語言數(shù)組指針的小例子
本文標(biāo)題:基于SVN源碼服務(wù)器搭建(詳細(xì)教程分析)
本文地址:http://mengdiqiu.com.cn/a1/Cyuyan/4350.html
您可能感興趣的文章
- 01-10基于atoi()與itoa()函數(shù)的內(nèi)部實(shí)現(xiàn)方法詳解
- 01-10基于C語言sprintf函數(shù)的深入理解
- 01-10基于C程序啟動代碼的深入分析
- 01-10基于getline()函數(shù)的深入理解
- 01-10基于C語言fflush()函數(shù)的使用詳解
- 01-10基于linux下獲取時間函數(shù)的詳解
- 01-10基于C語言指令的深入分析
- 01-10基于c中使用ftruncate()前需要fflush(),使用后需要rewind()的深入探討
- 01-10基于C++ list中erase與remove函數(shù)的使用詳解
- 01-10基于C++輸出指針自增(++)運(yùn)算的示例分析


閱讀排行
本欄相關(guān)
- 04-02c語言函數(shù)調(diào)用后清空內(nèi)存 c語言調(diào)用
- 04-02func函數(shù)+在C語言 func函數(shù)在c語言中
- 04-02c語言的正則匹配函數(shù) c語言正則表達(dá)
- 04-02c語言用函數(shù)寫分段 用c語言表示分段
- 04-02c語言中對數(shù)函數(shù)的表達(dá)式 c語言中對
- 04-02c語言編寫函數(shù)冒泡排序 c語言冒泡排
- 04-02c語言沒有round函數(shù) round c語言
- 04-02c語言分段函數(shù)怎么求 用c語言求分段
- 04-02C語言中怎么打出三角函數(shù) c語言中怎
- 04-02c語言調(diào)用函數(shù)求fibo C語言調(diào)用函數(shù)求
隨機(jī)閱讀
- 01-10使用C語言求解撲克牌的順子及n個骰子
- 08-05DEDE織夢data目錄下的sessions文件夾有什
- 08-05織夢dedecms什么時候用欄目交叉功能?
- 01-10C#中split用法實(shí)例總結(jié)
- 08-05dedecms(織夢)副欄目數(shù)量限制代碼修改
- 01-10delphi制作wav文件的方法
- 01-10SublimeText編譯C開發(fā)環(huán)境設(shè)置
- 04-02jquery與jsp,用jquery
- 01-11ajax實(shí)現(xiàn)頁面的局部加載
- 01-11Mac OSX 打開原生自帶讀寫NTFS功能(圖文