1. 程式人生 > >2-svn的目錄結構

2-svn的目錄結構

1. SVN的安裝目錄

安裝完成後,我們需要了解SVN的每個目錄的作用。
這裡寫圖片描述

bin目錄

bin目錄下放的都是關於svn的使用命令,比如剛才我們用的svnadmin命令也放在bin目錄下。
這裡寫圖片描述

iconv目錄
iconv目錄放的都是一些關於國際化的檔案,也就是一些編碼檔案,比如我們熟悉的gb2312編碼等都放在此資料夾裡,那麼何謂國際化?

所謂軟體國際化就是軟體開發時,要使它能同時應對世界不同地區和國家的訪問,並針對不同地區和國家的訪問,提供相應的、符合來訪者閱讀習慣的頁面或資料。
這裡寫圖片描述

licenses目錄
licenses目錄放的都是一些許可證協議之類的檔案,具體是什麼玩意,我也不知道,不需要了解。
這裡寫圖片描述

share目錄
share目錄放的都是一些本地共享語言的轉換方式的檔案等。
這裡寫圖片描述

2. SVN倉庫建立與啟動

  那現在我們需要使用SVN,先要幹嘛?當然是先建立一個SVN倉庫咯!

  那怎麼去建立呢?有兩種方式,一種是命令列方式建立,另一種是圖形化方式建立,但是現在,我們只能用命令列方式了,因為使用圖形化建立方式需要額外安裝一個工具。

  建立svn倉庫需要指定路徑,這個路徑隨意指定,注意:不要帶中文路徑。

  這裡,我指定了在此路徑下建立一個SVN倉庫資料夾:F:\Repositories

3. SVN倉庫幹嘛用的

  Subversion是將檔案資料資訊儲存到版本庫中進行管理的,為了滿足使用者的不同需求,Subversion允許使用者對版本庫目錄進行定製。

  換句話說你這個svn倉庫可以管理多個專案,這樣做的目的是使一個SVN伺服器能夠同時管理多個專案,而不是為每一個專案搭建一個SVN伺服器,這顯然太浪費資源了。

  比如,你們公司內部正在開發CRM,ERP,OA專案,我們是不是可以在svn倉庫下建立倉庫來管理這些專案了。
例如: F:\Repository\CRM
     F:\Repository\ERP
     F:\Repository\OA
這裡寫圖片描述

4. 使用命令建立svn倉庫

使用命令建立svn倉庫,格式為:命令 倉庫路徑

      命令         路徑
svnadmin create F:\Repositories
\CRM

開啟cmd,執行此命令:
這裡寫圖片描述

5. SVN倉庫目錄結構

  執行完命令後,檢視CRM倉庫路徑多了以下這些檔案,這其實是SVN倉庫的目錄結構,下面我們來看一下SVN倉庫的這些檔案。
這裡寫圖片描述

conf目錄
conf目錄存放的是倉庫所使用的配置檔案等資訊。

conf目錄下還有以下幾個檔案:
這裡寫圖片描述
authz:許可權認證的檔案(比如:當前你有一個test使用者,可以通過修改authz檔案來修改test使用者的許可權資訊)
passwd:存放著svn使用者和密碼檔案
svnserve.conf:svn伺服器的核心配置檔案

db目錄
  此目錄一般是存放版本資料(上傳的程式碼),或者一些資料檔案(比如說,日誌檔案,區域檔案,配置檔案等)之類的放在這個目錄。

hooks目錄
  存放版本的各種資訊等,比如說:A修改了版本的資訊,然後B也修改了版本的資訊,如果你想恢復的A修改的版本,hooks目錄就記錄了這些版本資訊
這裡寫圖片描述

locks目錄
  顧名思義locks鎖的意思,如果你對某些檔案進行加鎖的話,其他人就動不了這些檔案了,一般在開發中不用。

6. 啟動SVN倉庫

啟動倉庫啟動形式分兩種:單倉庫啟動和多倉庫啟動。

單倉庫啟動:
  比如這裡有三個倉庫,但是我只想啟動CRM倉庫讓你們訪問,其他沒有啟動的不能訪問。所以啟動路徑應該為:F:\Repositories\CRM

多倉庫啟動:
  就是把多個倉庫啟動,比如啟動路徑改為:F:\Repositories 。表示把這三個倉庫都啟動,也就是說會把Repositories路徑下所有倉庫都啟動

7.SVN倉庫啟動方式

SVN倉庫啟動方式有三種:
  1.命令列方式
  2.批處理檔案啟動
  3.本地化服務啟動

7.1命令列啟動

  單倉庫啟動:svnserve -d -r F:\Repositories\CRM

  按倉庫啟動如下圖所示,注意,這裡並不是卡主了,實際上這就是啟動成功的狀態,另外,啟動後不要關閉此視窗,一旦此視窗被關閉,你所啟動的SVN服務和倉庫都會隨之關閉,也就不能訪問該倉庫了。
這裡寫圖片描述

多倉庫啟動:svnserve -d -r F:\Repositories(道理和上面是一樣的)

7.2批處理檔案啟動

  其實使用方式和上面命令列方式都是類似的,無非就是把命令列換成批處理檔案的形式:
  新建svn-server-start.bat檔案,再把命令svnserve -d -r F:\Repositories\CRM複製貼上,儲存到此檔案中。
這裡寫圖片描述

  如圖所示:下次再啟動該倉庫時只要雙擊svn-server-start.bat檔案,如果你需要啟動多個倉庫,可以新建多個批處理檔案。
這裡寫圖片描述

7.3本地服務化啟動

  高版本的SVN好像不需要本地服務化啟動,我記得1.8版本的服務端和客戶端都是圖形化操作,所以,這個會了,高版本自然就會了。

  也就是將SVN服務註冊為Winodws服務,這樣,只要你的電腦一開機就會啟動。

  命令列執行路徑是svn安裝的bin目錄路徑,另外,此dos指定格式嚴謹,不能隨意更改,哪怕是一個空格也不行
這裡寫圖片描述

找到我自己的svn安裝路徑和倉庫路徑,替換之後:
sc create SVN-Service binpath= “E:\svnserver\bin\svnserve.exe –service -r F:\Repositories” displayname= “SVN-Service” start= auto depend= Tcpip

複製此命令後,以管理員身份執行cmd執行此命令:
出現紅線框內的資訊,說明建立成功了。
這裡寫圖片描述

開啟計算機服務檢視,建立成功後,多了一個SVN服務了。
這裡寫圖片描述

這裡需要進行右鍵啟動SVN-Service,如果你的啟動失敗的話,一定要再次檢查你的命令和路徑是否正確。
這裡寫圖片描述

如果你想刪除SVN服務的話,可以使用該命令:
命令格式:sc delete 服務名稱

在刪除前,先把SVN服務停止
這裡寫圖片描述