在windows下配置svn服務器(方法一,無apache
1.下載文件
2.安裝Subversion 服務器
由于我下載的是setup.exe版本,安裝程序安裝后會自動設置系統變量.如果你下載的是zip版就需要手動設置系統變量.
setup.exe版直接安裝就可以了.安裝到D:\Program Files\Subversion
首先創建SVN儲存庫(repository)
svnadmin create F:\lava\svn\
【注】創建倉庫的方法也可以使用TortoiseSVN,在目的文件夾上右鍵->Create Repository
repository創建完畢后會在目錄下生成若干個文件和文件夾,dav目錄是提供給Apache與mod_dav_svn使用的目錄,讓它們存儲內部數據;db目錄就是所有版本控制的數據文件;hooks目錄放置hook腳本文件的目錄;locks用來放置Subversion文件庫鎖定數據的目錄,用來追蹤存取文件庫的客戶端;format文件是一個文本文件,里面只放了一個整數,表示當前文件庫配置的版本號;
3.配置SVN服務器
打開svn目錄中配置文件conf\svnserve.conf,修改配置參數。
例:d:\svnhome\conf\svnserve.conf去掉以下內容之前的注釋符#
[general]
anon-access = none
auth-access = write
password-db = passwd
realm = My First Repository
說明:
anon-access = none
--不允許匿名訪問!這個很重要,不然誰都能訪問這個代碼倉庫了。
auth-access = write
-- 允許提交修改
password-db = passwd
--密碼文件名字
【注】如果需要控制訪問的用戶身份,則:
# [general]
# password-db = passwd
去之每行開頭的#,其中第二行是指定身份驗證的文件名,即passwd文件
同樣打開passwd文件,將
# [users]
# harry = harryssecret
# sally = sallyssecret
這幾行的開頭#字符去掉,這是設置用戶,一行一個,存儲格式為“用戶名 = 密碼”,如可插入一行:admin = admin888,即為系統添加一個用戶名為admin,密碼為admin888的用戶
4.運行SVN服務器
運行SVN服務
在命令行執行
svnserve --daemon --root F:\lava\svn
服務啟動,--daemon可簡寫為-d,--root可簡寫為-r,可以建立一個批處理文件并放在windows啟動組中便于開機就運行SVN服務,或者在這個地址http://clanlib.org/~mbn/svnservice/下載那個svnservice.exe文件,拷貝到E:\svn\bin目錄下,再從命令行下執行:
svnservice -install --daemon --root "E:\svn\Repository"
sc config svnservice start= auto
net start svnservice
5、添加為系統服務
方法1(推薦):
在Windows NT中(包括Windows XP, Windows 2000, Windows 2003 Server)本身包含了一個安裝服務的工具,叫做"Service Control",也就是sc.exe。
1.安裝為服務:
例:我的Subversion安裝在"D:\program files\Subversion",版本庫在"D:\svn_root",而我希望對應的Subversion服務名為svnservice,安裝這個svn服務的命令就可以這樣寫:
sc create svnservice
binpath= "D:\ Program Files\Subversion\bin\svnserve.exe --service -r D:\svn_root"
displayname= "SVNService"
depend= Tcpip
請注意,因為便于察看,上面的命令分為多行,但在實際執行時應該在一行里。另外,在以前啟動svnserve時會使用"-d"選項,也就是守護進程模式,在這里不能使用,會導致服務無法啟動。同樣,"-i"和"-t"選項也不能使用。
另外還有兩點需要小心處理。首先,如果路徑中包括空格,一定要用“\”處理“"”號,例如上面的例子中如果svnserve.exe在“c:\ program files\subversion\”中,則命令應該寫為“binpath= "\"c:\program files\subversion\bin\svnserve.exe\"”(“”中的內容),整個命令如下,紅色部分是改變部分:
sc create svnservice
binpath= "\"D:\ Program Files\Subversion\bin\svnserve.exe\" --service -r D:\svnroot"
displayname= "SVNService"
depend= Tcpip
其次,sc對選項的格式還有要求,例如“depend= Tcpip”不能寫為“depend = Tcpip”或“depend=Tcpip”,也就是“=”前不能有空各,而后面必須有空格。
2.啟動服務
在命令行窗口執行完這個命令之后,服務還沒有啟動,你可以繼續運行"net start svnservice"啟動這個服務。
3.停止服務
然后使用"net stop svnservice"停止服務。
4.刪除服務
如果服務安裝的有問題,你可能需要刪除服務。要刪除前面添加的服務,只需要運行"sc delete svnservice","svnservice"就是我們創建服務時使用的名字。
5.配置服務是自動啟動
默認情況下安裝的服務不會隨Windows的啟動而啟動,為了使svn服務能夠隨Windows啟動而啟動,需要修改一下"sc create"命令(首先要刪除),增加"start= auto"選項:
sc create svnservice
binpath= "D:\ Program Files\Subversion\bin\svnserve.exe --service -r D:\svn_root"
displayname= "SVNService"
depend= Tcpip
start= auto
當然你也可以使用圖形化的工具修改服務的屬性,你可以在“開始->運行...”中執行"services.msc",然后在界面中修改。
方法2:
建立一個批處理文件并放在windows啟動組中便于開機就運行SVN服務。
方法3:
這個地址http://clanlib.org/~mbn/svnservice/下載那個svnservice.exe文件,拷貝到E:\svn\bin目錄下,再從命令行下執行:
svnservice --install --daemon --root "E:\svn\Repository"
sc config svnservice start= auto
net start svnservice
此文件會將SVN變成windows系統的一個服務,并默認為自啟動,注意:執行第三句時確保前面以命令行方式運行的SVN服務已經停止,如果沒停止可在其窗口中按Ctrl+C中止運行。
輕松搭建一個Windows SVN服務器
前文所述SVN客戶端使用的時候,用的SVN服務器通常為外部,例如Google Code的服務器,不過,做為一個程序開發人員,就算自己一個人寫程序,也應該有一個SVN版本控制系統,以便對開發代碼進行有效的管理。這里我就介紹一個在Windows環境下簡單快速搭建SVN服務器的方法。
通常的SVN服務器是搭建在Linux等系統下,例如用Apache+SVN配置,Linux下的SVN性能會非常好,但配置有些繁瑣,如果SVN服務器只有自己使用,那么可以直接把SVN服務器搭建在個人Windows環境下使用。
目前較為簡單的方案是VisualSVN Server。該SVN服務器是免費的,支持Windows NT, 2000, XP and 2003等環境,安裝非常簡單。
安裝的時候可以選擇SVN走http協議還是https協議,http協議速度快一些,而https協議安全性好。兩者均可以從瀏覽器直接訪問SVN項目。
安裝完成后打開,可以看到一個微軟的MMS管理界面,在里面可以輕松添加設置項目。用戶權限可以使用Windows的用戶,也可以單獨新建用戶。如果原先有一個SVN數據,則可以在界面上導入原有的SVN數據。

SVN客戶端依舊推薦使用Windows下的TortoiseSVN,兩者搭配起來,非常好用。
posted on 2010-03-10 13:16
MEYE 閱讀(1298)
評論(0) 編輯 收藏