teamcity设置
建立项目后首先要设置svn地址,并绑定
名字随便起
url是svn的地址
之后来做build step
有一个按钮可以自动检测,一般都能检测出来
执行这个似乎需要代理装什么东西
可以查看目前代理有那些符合,那些不符合。不符合的话可以详细看到底是那里不符合。
实话说,真心没看懂那些不符合的条件都是点啥,一开始这个步骤始终告诉我代理不符合,装了vs后,就符合了,估计是msbuild的版本不对
也可以用这个,这个应该是不用装vs
此时执行,一般会遇到缺少类包,因为我们从nuget获取的第三方类库是没有传到svn的
需要执行
在packages source中可以定义多个源
使用nuget的功能需要先安装nuget
从右上角进administration
使用reorder,把nuget安装dll包的步骤放到编译之前
编译成功后可以运行测试
如果你写的lib项目,在编译成功后,可以选择把自己的lib打成nuget包
specification files选择项目中要打包的csproj文件即可,可以通过点开后选取
有时候,打包的方式需要自己设置,去包含以下文件或其他的东西,此时可以把这个勾打上,并且在项目的根目录里放一个与项目同名的.nuspec文件去设置打包的情况,具体的设置方式可以用NuGet Package Explorer生成
右上角administration进入可以看到,teamcity自带nuget server
如果是要传到公网,可以用
如果项目是网站,当编译完成后,可以通过ftp上传到指定的服务器
下面的Artifacts path,每行一个,格式是 源路径=>目标路径
比如 TestProj/bin/*.*=>/bin/就会把项目里bin目录下的所有文件都上传到ftp下根目录bin文件夹里
*.*只是文件,如果想传子文件夹可以用**
另外Transfer Mode可能需要改为binary,如果是默认的,js和css传上去中文会乱码
我们知道当网站更新后,第一次启动会比较慢,我们一般穿上去之后,自己先打开看一下,这个工作也可以让teamcity来做
执行一个powershell命令让他去访问你要访问的页面就好了
一般我的build step也就用到这几个了
最后要设置一个trigger,希望是当svn有提交时,自动开始运行,则添加一个vcs trigger
免费的teamcity是有一些限制的