自學【svn版本庫-倉庫服務器搭建和測試】

VisualSVN Server創建版本庫,

以及TortoiseSVN的使用.

首先打開VisualSVN Server Manager,如圖:

\

可以在窗口的右邊看到版本庫的一些信息,比如狀態,日誌,用戶認證,版本庫等.要建立版本庫,需要右鍵單擊左邊窗口的Repositores,如圖:

\

在彈出的右鍵菜單中選擇Create New Repository或者新建->Repository,進入下一步:

\

輸入版本庫名稱,勾上Create default structure複選框(推薦這麼做).點擊OK,版本庫就創建好了,版本庫中會默認建立trunk,branches,tags三個文件夾,如圖:

\

這時候我們將項目導入到版本庫中,找到你的項目文件夾,在項目文件夾上點擊鼠標右鍵,找到SVN菜單,選擇導入,如圖:

\

在彈出的對話框中填上版本庫URL,這個URL可以從VisualSVN Server Manager中獲取,在你的版本庫上單擊右鍵,選擇Copy URL to Clipboard,這樣就把版本庫URL複製到你的剪貼版了.如圖:

\

將複製的版本庫URL粘貼上,在URL後面加上trunk子路徑.然後在導入信息裏面填上導入信息"導入項目到版本庫".如圖:

\

點擊確定,所選中的項目就會被導入到版本庫中.如圖:

\

項目導入到版本庫以後,不能隨便讓誰都能夠讀寫版本庫,所以需要建立用戶組和用戶.

在VisualSVN Server Manager窗口的左側右鍵單擊用戶組,選擇Create User或者新建->User,如圖:

\

在彈出的對話框中填寫User name和Password,然後點擊OK,如圖:

\

用相同的方式分別創建用戶Develpoer1,Develpoer2,Develpoer3,Test1,Test2,Manger六個用戶,分別代表3個開發人員,兩個測試人員和一個項目經理,如圖:

\

然後我們建立用戶組,在VisualSVN Server Manager窗口的左側右鍵單擊用戶組,選擇Create Group或者新建->Group,如圖:

\

在彈出窗口中填寫Group name爲Developers,然後點Add按鈕,在彈出的窗口中選擇三個Developer,加入到這個組,然後點Ok,如圖:

\

用相同的方式創建組Managers,Testers,如圖:

\

接下來我們給用戶組設置權限,在MyRepository上單擊右鍵,選擇屬性,如圖:

\

在彈出的對話框中,選擇Security選項卡,點擊Add按鈕,選中Developers,Managers,Testers三個組,然後添加進來,給Developers,Managers權限設置爲Read/Write,Tester權限設置爲Read Only,如圖:

\

到此,服務端就完成了.

接下來,我們用客戶端去檢出代碼,在桌面空白處單擊右鍵,選擇SVN檢出,在彈出的對話框中填寫版本庫URL(具體獲取方式,上面講上傳項目到版本庫的時候講過),選擇檢出目錄,點擊確定.如圖:

\

開始檢出項目,如圖:

\

檢出完成之後,我們打開工作副本文件夾,會看到所有文件和文件夾都有一個綠色的√.如圖:

\

至此,創建版本庫和使用TortoiseSVN導入項目,檢出項目已經介紹完畢.

下一篇介紹TortoiseSVN的使用,以及衝突解決辦法.

SVN服務器搭建和使用(三)

 

接下來,試試用TortoiseSVN修改文件,添加文件,刪除文件,以及如何解決衝突等.

添加文件

在檢出的工作副本中添加一個Readme.txt文本文件,這時候這個文本文件會顯示爲沒有版本控制的狀態,如圖:

\

這時候,你需要告知TortoiseSVN你的操作,如圖:

\

加入以後,你的文件會變成這個狀態,如圖:

\

這時候使用TortoiseSVN進行提交.這樣別人就能看到你所做的更改了,如圖.

\

修改文件

使用TortoiseSVN更新,修改工作副本中的Readme.txt文件,加入"hello world!",然後保存,你會發現Readme.txt文件的圖標改變了,如圖:

\

這個紅色的歎號代表這個文件被修改了,這時候,提交更改,其他人即可看到你的更改.

重命名文件

使用TortoiseSVN更新,重命名工作副本中的Readme.txt文件爲"Readme1.txt',然後保存,你會發現Readme.txt文件的圖標改變了,如圖:

\

更添加文件一個道理,這時候你需要告訴TortoiseSVN你的操作,如圖:

\加載中...

加入以後,提交,這時候版本庫中的Readme.txt文件將會被重命名爲"Readme1.txt".

刪除文件

使用TortoiseSVN更新,使用TortoiseSVN刪除工作副本中的Readme.txt文件,然後提交,版本庫中的相應文件即被刪除掉了,如圖:

\

強制寫註釋

爲了以後你能更清晰的看到你所做的每一次更改的原因,你在每次提交的時候應該寫上註釋,而且儘量詳細.如圖:

\

但是,可能有的人因爲覺得太繁瑣,而不填寫註釋,這不利於以後的版本控制,可以將強制在提交的時候寫註釋,首先單擊右鍵,選擇TortoiseSVN->屬性,如圖:

\

在彈出的對話框中,點擊新建->日誌大小,設置提交日誌的最小字符數和鎖定日誌的最小字符數爲20,提交文本框中顯示邊線的字符位置設置爲100,點擊確定,如圖:

\

提交,以後再次提交的時候,如果輸入的註釋少於20個字符,將無法提交.

衝突解決

衝突問題是最常見的問題,它是這樣產生的,A用戶check out了一個工作副本A,接着B用戶又check out了一個工作副本B.然後A用戶對副本A中的文件C做了修改(可以是內容修改,文件刪除,重命名,以及位置移動),並且提交.這時候B用戶也對文件C的相同部分做了修改,這時候如果B用戶進行提交,會先被告知版本過時,要求更新,然後更新的時候會提示衝突了,這時候可以用衝突編輯器進行手動選擇.

TortoiseSVN客戶端重新設置用戶名和密碼

 

在第一次使用TortoiseSVN從服務器CheckOut的時候,會要求輸入用戶名和密碼,這時輸入框下面有個選項是保存認證信息,如果選了這個選項,那麼以後就不用每次都輸入一遍用戶名密碼了。

不過,如果後來在服務器端修改了用戶名密碼,則再次檢出時就會出錯,而且這個客戶端很弱智,出錯之後不會自動跳出用戶名密碼輸入框讓人更新,我找了半天也沒找到修改這個用戶名密碼的地方。

最終,找到兩種解決辦法:

辦法一:在TortoiseSVN的設置對話框中,選擇「已保存數據」,在「認證數據」那一行點擊「清除」按鈕,清楚保存的認證數據,再檢出的時候就會重新跳出用戶名密碼輸入框。

 

\

如果方法一不起作用,則可以採用方法二:

Tortoise的用戶名密碼等認證信息都是緩存在客戶端文件系統的這個目錄:

C:/Documents and Settings/Administrator/Application Data/Subversion/auth

刪除auth下面的所有文件夾,重新連接遠程服務器進行檢出,對話框就會出現!