Windows下自動啟動SVN服務(wù)詳解
本節(jié)介紹一下Windows下自動啟動SVN,包括安裝svnservice,配置服務(wù)是自動啟動和刪除服務(wù)幾部分,在這里和大家簡單介紹分享一下,希望通過本節(jié)的學(xué)習(xí)你能掌握Windows下自動啟動SVN的方法。
以前的svnserve要想成為windows服務(wù),必須依賴于svnservice或其他工具。從Subversion1.4開始,Subversion本身就集成Windows服務(wù)的工具。
1.安裝svnservice
在WindowsNT中(包括WindowsXP,Windows2000,Windows2003Server)本身包含了一個安裝服務(wù)的工具,叫做"ServiceControl",也就是sc.exe。
例如我的Subversion安裝在"D:Subversion",版本庫在"D:svnroot",而我希望對應(yīng)的Subversion服務(wù)名為svnservice,安裝這個svn服務(wù)的命令就可以這樣寫:
sccreatesvnservice
binpath="D:Subversionbinsvnserve.exe--service-rD:svnroot"
displayname="SVNService"
depend=Tcpip
請注意,因?yàn)楸阌诓炜?,上面的命令分為多行,但在?shí)際執(zhí)行時應(yīng)該在一行里。另外,在以前啟動svnserve時會使用"-d"選項(xiàng),也就是守護(hù)進(jìn)程模式,在這里不能使用,會導(dǎo)致服務(wù)無法啟動。同樣,"-i"和"-t"選項(xiàng)也不能使用。
在命令行窗口執(zhí)行完這個命令之后,服務(wù)還沒有啟動,你可以繼續(xù)運(yùn)行"netstartsvnservice"啟動這個服務(wù),然后使用"netstopsvnservice"停止服務(wù)。
另外還有兩點(diǎn)需要小心處理。首先,如果路徑中包括空格,一定要用“”處理“"”號,例如上面的例子中如果svnserve.exe在“c:programfilessubversion”中,則命令應(yīng)該寫為“binpath=""c:programfilessubversionbinsvnserve.exe"”(“”中的內(nèi)容),整個命令如下,紅色部分是改變部分:
sccreatesvnservice
binpath=""D:programfilesSubversionbinsvnserve.exe"--service-rD:svnroot"
displayname="SVNService"
depend=Tcpip
其次,sc對選項(xiàng)的格式還有要求,例如“depend=Tcpip”不能寫為“depend=Tcpip”或“depend=Tcpip”,也就是“=”前不能有空各,而后面必須有空格。
2.刪除服務(wù)
如果服務(wù)安裝的有問題,你可能需要刪除服務(wù)。要刪除前面添加的服務(wù),只需要運(yùn)行"scdeletesvnservice","svnservice"就是我們創(chuàng)建服務(wù)時使用的名字。
3.配置服務(wù)是自動啟動SVN
默認(rèn)情況下安裝的服務(wù)不會隨Windows的啟動而啟動SVN,為了使svn服務(wù)能夠隨Windows啟動而啟動,需要修改一下"sccreate"命令(首先要刪除),增加"start=auto"選項(xiàng):
sccreatesvnservice
binpath="D:\Subversion\bin\svnserve.exe--service-rD:\svnroot"
displayname="SVNService"
depend=Tcpip
start=auto
當(dāng)然你也可以使用圖形化的工具修改服務(wù)的屬性,你可以在“開始->運(yùn)行...”中執(zhí)行"services.msc",然后在界面中修改。
查考文獻(xiàn):http://www.blogjava.net/Alpha/archive/2007/08/29/141108.html
注意:在使用eclipseSVN插件時,我發(fā)現(xiàn)原來的路徑不管用了,所以創(chuàng)建服務(wù)的時候要注意binpath="D:\Subversion\bin\svnserve.exe--service-rD:\svnroot"svnroot是你庫的上一個目錄。我就犯了這個錯誤了地址寫成了D:\svnroot\demo,結(jié)果我客戶端訪問svn://localhost/svnroot/demo是提示non-existentinthatrevision,修改成svn://localhost/就能訪問了,當(dāng)然如果你就使用一個庫的話,剛才的訪問就更方便了。本節(jié)介紹Windows下自動啟動SVN,請關(guān)注本節(jié)其他相關(guān)報(bào)道。
【編輯推薦】

















