1.VisualSVN server的使用
1.建立版本庫
首先打開VisualSVN Server Manager,如圖:
可以在窗口的右邊看到版本庫的一些信息,比如狀態,日誌,用戶認證,版本庫等。
要建立版本庫,需要右鍵單擊左邊窗口的Repositores,如圖:
在彈出的右鍵菜單中選擇Create New Repository或者新建->Repository,進入下一步:
進入下一步:
倉庫名寫作:MyRepository,點擊下一步:
選中Single-project repository,點擊下一步:
點擊Create,版本庫就創建好了:
點擊Finish,版本庫中會默認建立trunk,branches,tags三個文件夾,如圖:
svn://proj/|+-trunk+-branches+-tags
這是一個標準的佈局,trunk爲主開發目錄,branches爲分支開發目錄,tags爲tag存檔目錄(不允許修改)。但是具體這幾個目錄應該如何使用,svn並沒有明確的規範,更多的還是用戶自己的習慣。
2.建立用戶組和用戶
在VisualSVN Server Manager窗口的左側右鍵單擊用戶組,選擇Create User或者新建->User,如圖:
在彈出的對話框中填寫User name和Password,然後點擊OK,如圖:
用相同的方式分別創建用戶Develpoer1,Develpoer2,Develpoer3,Tester1,Tester2,Manager六個用戶,分別代表3個開發人員,兩個測試人員和一個項目經理,如圖:
然後我們建立用戶組,在VisualSVN Server Manager窗口的左側右鍵單擊用戶組,選擇Create Group或者新建->Group,如圖:
在彈出窗口中填寫Group name爲Developers,然後點Add按鈕,在彈出的窗口中選擇三個Developer,加入到這個組,然後點Ok,如圖:
用相同的方式創建組Managers,Testers。
3.設置用戶用戶權限
接下來我們給用戶組設置權限,在MyRepository上單擊右鍵,選擇屬性,如圖:
在彈出的對話框中,選擇Security選項卡,點擊Add按鈕,選中Developers,Managers,Testers三個組,然後添加進來,給Developers,Managers權限設置爲Read/Write,Tester權限設置爲Read Only,Everyone權限設爲No Access,如圖:
4.導入項目到版本庫
找到你需要導入的項目文件夾,在項目文件夾上點擊鼠標右鍵,找到SVN菜單,選擇導入,如圖:
在彈出的對話框中填上版本庫URL,這個URL可以從VisualSVN Server Manager中獲取,在你的版本庫上單擊右鍵,選擇Copy URL to Clipboard,這樣就把版本庫URL複製到你的剪貼版了。將複製的版本庫URL粘貼上,在URL後面加上trunk子路徑。然後在導入信息裏面填上導入信息"第一次導入項目到版本庫"。如圖:
點擊確定,所選中的項目就會被導入到版本庫中。如圖:(PS.導入過程需要用戶認證,上文已經建立好了用戶,選擇一個用戶登入即可)
至此,VisualSVN server服務器端已經搭建好。
2.TortoiseSVN的使用
1.檢出代碼
在桌面空白處單擊右鍵,選擇SVN檢出,在彈出的對話框中填寫版本庫URL(具體獲取方式,上面講上傳項目到版本庫的時候講過),選擇檢出目錄,點擊確定。如圖:
開始檢出項目,如圖:(PS.檢出過程需要用戶認證,上文已經建立好了用戶,選擇一個用戶登入即可)
檢出完成之後,我們打開工作副本文件夾,會看到所有文件和文件夾都有一個綠色的√。如圖:
至此,創建版本庫和使用TortoiseSVN導入項目,檢出項目已經介紹完畢。
2.添加文件
在檢出的工作副本中添加一個Readme.txt文本文件,這時候這個文本文件會顯示爲沒有版本控制的狀態,如圖:
這時候,你需要告知TortoiseSVN你的操作,如圖:
加入以後,你的文件會變成這個狀態,如圖:
這時候使用TortoiseSVN進行提交。這樣別人就能看到你所做的更改了。如圖:
3.修改文件
使用TortoiseSVN更新,修改工作副本中的Readme.txt文件,加入"hello world!",然後保存,你會發現Readme.txt文件的圖標改變了,如圖:
這個紅色的歎號代表這個文件被修改了,這時候,提交更改,其他人即可看到你的更改。
4.重命名文件
使用TortoiseSVN更新,修改工作副本中的Readme.txt文件,加入"hello world!",然後保存,你會發現Readme.txt文件的圖標改變了,此時的重命名文件和添加文件操作一致,此時你需要告訴TortoiseSVN你的操作:加入以後,提交,這時候版本庫中的Readme.txt文件將會被重命名爲"Readme1.txt"。
5.刪除文件
使用TortoiseSVN更新,使用TortoiseSVN刪除工作副本中的Readme.txt文件,然後提交,版本庫中的相應文件即被刪除掉了,如圖:
6.寫提交註釋
爲了以後你能更清晰的看到你所做的每一次更改的原因,你在每次提交的時候應該寫上註釋,而且儘量詳細。如圖:
但是,可能有的人因爲覺得太繁瑣,而不填寫註釋,這非常的不利於以後的版本控制,可以將強制在提交的時候寫註釋,首先單擊右鍵,選擇TortoiseSVN->屬性,如圖:
在彈出的對話框中,點擊新建->日誌大小,設置提交日誌的最小字符數和鎖定日誌的最小字符數爲10,提交文本框中顯示邊線的字符位置設置爲100,勾選遞歸應用該屬性值,點擊確定,要將本地工作副本commit一下,才能生效,如圖:
以後再次提交的時候,如果輸入的註釋少於10個字符,將無法提交。
7.衝突解決
衝突問題是最常見的問題,它是這樣產生的,A用戶check out了一個工作副本A,接着B用戶又check out了一個工作副本B。然後A用戶對副本A中的文件C做了修改(可以是內容修改,文件刪除,重命名,以及位置移動),並且提交。這時候B用戶也對文件C的相同部分做了修改,這時候如果B用戶進行提交,會先被告知版本過時,要求更新,然後更新的時候會提示衝突了,這時候可以用衝突編輯器進行手動選擇。