接上篇.net framework+git在Jenkins上的自动化部署入门
上面我们说到了发布好了项目文件,那么接下去我们需要把项目代码部署到iis项目下。
这里我们以Jenkins和项目服务器部署在同一台为例。
在Jenkins,进入项目配置
点击增加构建步骤
选择脚本命令操作
这里我们把编译好的项目文件复制到指定的目录下,
C:\HelloWord\Test 是编译好的项目文件夹
C:\HelloWord2 是iis项目下的目录
这里我们使用xcopy 进行复制操作
xcopy C:\HelloWord\Test C:\HelloWord2 /e /s /y /EXCLUDE:C:\11\1.txt
参数含义
/S 复制目录和子目录,除了空的。
/E 复制目录和子目录,包括空的。与 /S /E 相同。可以用来修改 /T。
/Y 不使用确认是否要覆盖现有目标文件的提示。
那么在实际的项目当中,我们一般是需要排除指定的文件,比如 web.cnfig ,因为开发和测试环境一般的一些链接信息是不同的,所以我们是不能把配置信息覆盖掉的。如果是人工发布,一般我们肯定是把这排除掉。
这里我们在指定文件进行配置
EXCLUDE:C:\11\1.txt
- --注释:从C:\HelloWord\Test拷贝到C:\HelloWord2目录(注C:\HelloWord2则不会提示是目录还是文件)排除C:\11\1.txt中的
- xcopy C:\HelloWord\Test C:\HelloWord2 /e /s /y /EXCLUDE:C:\11\1.txt
-
-
- --注释:不包含以.obj 、 .sdf 、 .pdb 、 .rar 、.config 、结尾的文件,也不包含Common.js文件
- --C:\11\1.txt
- .obj
- .sdf
- .pdb
- .rar
- .config
- Common.js
我们再看下构建的控制台输出,会发现文件被排除了
当然,如果是Jenkins和iis服务器不在同一台,那么我们可以网络复制,或者使用ftp上传文件。