直接上一个bat文件比较好。
简而言之就是完全通过windows命令行操作。
诸如:
1.进入项目文件夹
2.pull最新代码
3.使用msbuild.exe命令编译
4.通过InstallUtil.exe命令安装编译成功的windows服务(这个项目是个windows服务的,其余项目类推。如dotnet core项目的命令就是 dotnet run …之类的)
如此即可完事。
@echo off
rem 本地测试路径
set RootFolderPath=C:\projects\QDEventServiceSite
set SourceFolder=%RootFolderPath%\BE\QDMicePayment\QDMice.Payment\SMS_Service
set DestExePath=%SourceFolder%\bin\Release\SMS_Service.exe
rem 真实路径
rem set RootFolderPath=D:\MICE\Projects\QDEventServiceSite
rem set SourceFolder=%RootFolderPath%\BE\QDMicePayment\QDMice.Payment\SMS_Service
rem set DestExePath=%SourceFolder%\bin\Release\SMS_Service.exe
set MsBuildExePath=C:\Windows\Microsoft.NET\Framework\v4.0.30319
set ServiceName=SMS_Service
set InstallUtilPath=C:\Windows\Microsoft.NET\Framework\v4.0.30319
rem pull最新代码
cd %RootFolderPath%
git pull
rem 进入项目
cd %SourceFolder%
rem 编译项目
net stop %ServiceName%
%MsBuildExePath%\MSBuild.exe %SourceFolder%\SMS_sln.sln /p:Configuration=Release /p:TargetFramework=v4.5.2 /p:Platform="Any CPU"
rem 停止,卸载服务
net stop %ServiceName%
%InstallUtilPath%\InstallUtil.exe -u %DestExePath%
rem 安装,启动服务
echo %InstallUtilPath%\InstallUtil.exe %DestExePath%
%InstallUtilPath%\InstallUtil.exe %DestExePath%
echo net start %ServiceName%
net start %ServiceName%
pause