把Gitblit变成Windows服务

第一步:试错

下载完Gitblit GO 1.8.0 for Windows 解压后运行installService.cmd 华丽的看到一串信息 输入图片说明 而后,再看看服务列表:木有小gg~~java

第二步:解剖

打开installService.cmd文件,无视那些@REM 能够看到git

SET ARCH=amd64

"%CD%\%ARCH%\gitblit.exe"  //IS//gitblit
		 --DisplayName="gitblit" 
		 --Description="a pure Java Git solution" 
		 --Startup=auto 
		 --LogPath="%CD%\logs" 
		 --LogLevel=INFO 
		 --LogPrefix=gitblit 
		 --StdOutput=auto 
		 --StdError=auto
		 --StartPath="%CD%" 
		 --StartClass=org.moxie.MxLauncher 
		 --StartMethod=main 
		 --StartParams="--storePassword;gitblit;--baseFolder;%CD%\data" 
		 --StartMode=jvm 
		 --StopPath="%CD%"
		 --StopClass=org.moxie.MxLauncher 
		 --StopMethod=main 
		 --StopParams="--stop;--baseFolder;%CD%\data" 
		 --StopMode=jvm 
		 --Classpath="%CD%\gitblit.jar" 
		 --Jvm=auto 
		 --JvmMx=1024

这样一串命令行文件,显然最核心的是 "%CD%%ARCH%\gitblit.exe" 由于ARCH=amd64 因此它是指gitblit的目录在amd64子目录中的gitblit.exe文件。彷佛它罢工了windows

仔细盘查户口发现:原来它是黑户口,由一个叫prunsvr的程序冒充的! 输入图片说明tomcat

第三步:重构

到户口所在地查了一下,这货是一个叫Apache Commons Daemon的项目就是把java注册成Windows服务的工具,其中tomcat的windows版就是它的杰做。而且发现新的一版是1.0.15,而gitblit里的是1.0.10,因而拿下最新版(下载地址隐藏在 •browse download area 这个连接中,并非下载那些jar文件) 复制到gitblit的amd64文件夹中,而后把installService.cmd和uninstallService.cmd中的gitblit.exe 改为 prunsvr.exejvm

第四步:炫耀

在兼容性上选择以管理员方式运行prunsvr.exe 而后再次运行installService.cmd 随后gitblit出如今服务列表中 输入图片说明 启动服务工具

完美

访问 https://localhost:8443 输入图片说明spa

相关文章
相关标签/搜索