天天看點

如何在windows上安裝部署設定SVN伺服器

工具/原料

  • 作業系統:Windows2003,32位

    SVN Server版本:svn-win32-1.6.16

    SVN Client版本:TortoiseSVN-1.6.16.21511

方法/步驟

  1. 一、準備工作

    1、SVN伺服器:解壓縮包,可以從官方網站下載下傳最新版本。

    2、SVN用戶端:TortoiseSVN,即常說的小烏龜,是一個用戶端程式,用來與伺服器端通訊。

  2. 二、安裝伺服器和用戶端程式

    1、SVN伺服器:直接解壓縮到某個檔案夾下即可。示例路徑:c:\svn\

          備注:如果下載下傳的是msi程式,直接運作按提示安裝即可。

    2、SVN用戶端:直接運作按提示安裝即可。示例路徑:C:\Program Files\Subversion

  3. 三、建立版本庫(Repository):示例路徑:e:\svnroot。建立版本庫有兩種方法:

    方法一,建立空目錄e:\svnroot\repos1,進入repos1檔案夾,在空白處點選右鍵,選擇“TortoiseSVN->Create Repositoryhere...”,

    方法二,建立空目錄e:\svnroot\repos2,進入DOS指令行,輸入如下指令:

    svnadmincreate e:\svnroot\repos2

    如何在windows上安裝部署設定SVN伺服器
  4. 四、運作SVN伺服器,啟動服務。啟動服務有兩種方法:

    方法一,臨時啟動服務,在DOS下輸入如下指令:

    svnserve -d -r e:\svnroot\repos1 --listen-host ip位址  --listen-port=端口号

    說明:“listen-host”和“listen-port”可選。預設端口是3690,如果端口已經被占用,可以通過選項listen-port指定端口号。

    注意:請不要關閉指令行視窗,關閉視窗會把 svn服務就停止了。

    方法二,啟動SVN服務為背景運作程式:

    sc create svnserve binPath= "c:\svn\bin\svnserve.exe --service  -r e:\svnroot\repos1" displayname= "Subversion" depend=Tcpip  start= auto

    說明一:

    (1)sc是windows自帶的服務配置程式。svnserve是服務的名稱,可根據需求取名。

    (2)參數binPath表示svnserve可執行檔案的安裝路徑。

    (3)--service表示以windows服務的形式運作,--r指明svnrepository的位置,service參數與r參數都作為binPath的一部分,是以與svnserve.exe的路徑一起被包含在一對雙引号當中。

    (4)displayname表示在windows服務清單中顯示的名字,depend=Tcpip表示svnserve服務的運作需要tcpip服務,start=auto表示開機後自動運作。安裝服務後,svnserve要等下次開機時才會自動運作。

    說明二:

    (1)binPath的等号前面無空格,等号後面有空格。displayname、depend、start也一樣,service前面是--,不是- ,而r前面是-。

    (2)若要解除安裝svn服務,則執行 sc delete svnserve 即可。

    (3)從“sc”到“auto”是在同一個指令sc,必須寫在同一行。

    (4)啟動服務指令:netstart svnserve,停止服務指令:net start svnserve,也可以進入Windows提供的界面操作SVNService服務了,即控制台—>服務。

    (5)如果路徑中包括空格,一定要用“\”處理“"”号,例如上面的例子中如果svnserve.exe在“c:\programfiles\svn\”中,則指令應該寫為“binpath="\"c:\programfiles\svn\bin\svnserve.exe\"

    如何在windows上安裝部署設定SVN伺服器
    如何在windows上安裝部署設定SVN伺服器
  5. 五、配置使用者和權限

    (1)修改svnserve.conf,在e:\svn\repos1\conf目錄下,用文本編輯器打開svnserve.conf:

    将:

          # anon-access = read

          # auth-access = write

          # password-db = passwd

    改為

          anon-access = read

          auth-access = write

          password-db = passwd

    注意說明:

    anon-access等列前面是沒有空格的。

    anon-access = read表示沒通過使用者名密碼登入的通路隻有讀的權限,如果改為none則沒有使用者名密碼不能通路

    auth-access = write表示通過使用者名密碼登入的有寫的權限(當然讀的權限也就有了)

    password-db = passwd表示可以通過 使用者名 = 密碼  的方式在passwd檔案中添加使用者

    (2)修改同目錄的passwd檔案,增加使用者帳号:

    将:

          [users]

          # harry = harryssecret

          # sally = sallyssecret

    添加帳号:

          [users]

          # harry = harryssecret

          # sally = sallyssecret

          admin = admin

    添加一個admin賬戶,密碼是admin。

  6. 六、初始化SVN,導入資料

    選中要上傳SVN的檔案夾,“右鍵 ->TortoiseSVN -> Import...” ,在彈出對話框的“URL of repository”輸入“svn://localhost/project1/”。在“Importmessage”輸入注釋,點選OK,要求輸入帳号,輸入賬戶admin和密碼admin。

  7. 七,測試SVN

    本地測試:建立一空檔案夾test1,單擊右鍵,選擇“SVN Checkout”,在“URL of repository”中輸入“svn://localhost/project1”。

    其他機器測試:如果運作svnserve的主機IP位址是1.2.3.4,則URL輸入的内容就是“svn://1.2.3.4/project1”。

繼續閱讀