允许svn服务与WINDOWS自己主动启动



曾经的svnserve要想成为windows服务,必须依赖于svnservice或其它工具。

从Subversion1.4開始,Subversion本身就集成了Windows服务的工具。

将svn设置成为系统服务自己主动执行的方法:
在Windows NT中(包括Windows XP, Windows 2000, Windows 2003 Server,Windows7)本身包括了一个安装服务的工具。叫做"Service Control",也就是sc.exe。
比如我的Subversion安装在"C:subversion"。版本号库在"D:svn_repository",而我希望相应的Subversion服务名为svnservice,安装这个svn服务的命令就能够这样写:
sc create svnservice binpath= "C:subversioninsvnserve.exe --service -r D:svn_repository" displayname= "SVNService" depend= Tcpipstart= auto

上面的命令中,假设缺少“start= auto”则安装的服务不会随Windows的启动而启动。

假设服务安装的有问题,你可能须要删除服务。

要删除前面加入的服务。仅仅须要执行"sc delete svnservice","svnservice"就是我们创建服务时使用的名字。

请注意。由于便于察看,上面的命令分为多行。但在实际执行时应该写在一行里。

另外。在曾经启动svnserve时会使用"-d"选项,也就是守护进程模式。在这里不能使用,会导致服务无法启动。相同,"-i"和"-t"选项也不能使用。(注意:cmd命令执行时要“run as administrator”)


在命令行窗体执行完这个命令之后,服务还没有启动,你能够继续执行
net start svnservice
 
启动这个服务(命令“net stop svnservice”能够停止服务)。


另外还有两点须要小心处理。首先。假设路径中包含空格。一定要用“”处理“"”号,比如上面的样例中假设svnserve.exe在“C:Program Filessubversion”中,则整个命令例如以下:
sc create svnservice binpath= ""C:Program FilesSubversioninsvnserve.exe" --service -r D:svn_repository" displayname= "SVNService" depend= Tcpip start= auto
其次。sc对选项的格式还有要求。比如“depend= Tcpip”不能写为“depend = Tcpip”或“depend=Tcpip”,也就是“=”前不能有空各。而后面必须有空格。
曾经的svnserve要想成为windows服务,必须依赖于svnservice或其它工具。

从Subversion1.4開始,Subversion本身就集成了Windows服务的工具。

将svn设置成为系统服务自己主动执行的方法:
在Windows NT中(包括Windows XP, Windows 2000, Windows 2003 Server,Windows7)本身包括了一个安装服务的工具,叫做"Service Control"。也就是sc.exe。
比如我的Subversion安装在"C:subversion",版本号库在"D:svn_repository",而我希望相应的Subversion服务名为svnservice,安装这个svn服务的命令就能够这样写:
sc create svnservice binpath= "C:subversioninsvnserve.exe --service -r D:svn_repository" displayname= "SVNService" depend= Tcpipstart= auto

上面的命令中。假设缺少“start= auto”则安装的服务不会随Windows的启动而启动。假设服务安装的有问题,你可能须要删除服务。

要删除前面加入的服务,仅仅须要执行"sc delete svnservice","svnservice"就是我们创建服务时使用的名字。

请注意。由于便于察看,上面的命令分为多行,但在实际执行时应该写在一行里。另外,在曾经启动svnserve时会使用"-d"选项,也就是守护进程模式,在这里不能使用,会导致服务无法启动。相同,"-i"和"-t"选项也不能使用。(注意:cmd命令执行时要“run as administrator”)

在命令行窗体执行完这个命令之后,服务还没有启动,你能够继续执行
net start svnservice
 
启动这个服务(命令“net stop svnservice”能够停止服务)。

另外还有两点须要小心处理。首先,假设路径中包含空格。一定要用“”处理“"”号。比如上面的样例中假设svnserve.exe在“C:Program Filessubversion”中。则整个命令例如以下:
sc create svnservice binpath= ""C:Program FilesSubversioninsvnserve.exe" --service -r D:svn_repository" displayname= "SVNService" depend= Tcpip start= auto
其次,sc对选项的格式还有要求。比如“depend= Tcpip”不能写为“depend = Tcpip”或“depend=Tcpip”,那是,“=”每个前没有空。但必须跟着免费格。

版权声明:本文博主原创文章。博客,未经同意不得转载。

原文地址:https://www.cnblogs.com/gcczhongduan/p/4887358.html