标签: continuous-integration

如何通过CI平台(Hudson)自动增加C#程序集版本?

我自己和我的团队在增加程序集版本号时非常可怕,我们经常发送1.0.0.0版本的程序集.显然,这会引起很多麻烦.

我们通过CI平台实现了更好的实践,我真的想将其设置为自动增加assemblyinfo.cs文件中的值,以便使用该程序集中的代码更改自动更新程序集的版本.

我之前已经设置(在我们找到Hudson之前)通过任一msbuild或者命令行(不记得)增加值的方法,但是使用Hudson,这将更新SVN存储库并触发另一个构建.由于Hudson每小时轮询SVN,这将导致缓慢的无限循环.

让Hudson增加版本号是一个坏主意吗?什么是另一种方法呢?

理想情况下,我的解决方案标准是:

  • 在构建assemblyinfo.cs之前增加内部版本号
  • 仅增加已更改的程序集中的内部版本号.这可能是不可能的,因为Hudson每次执行构建时都会清除项目文件夹
  • 将更改的assemblyinfo.cs提交到代码存储库(当前为VisualSVN)
  • 在下次扫描更改时,不会导致Hudson触发新构建

在我脑海中解决这个问题,我可以通过批处理文件/命令轻松地提出大部分解决方案,但是我的所有想法都会导致Hudson在下次扫描时触发新的构建.我不是在找人为我做任何事情,只是指出我正确的方向,也许是让Hudson忽略某些SVN提交的技巧等.

到目前为止我发现的所有内容都只是一篇文章,解释了如何自动增加版本号,没有考虑到可以旋转到无限循环的CI平台.

.net versioning msbuild continuous-integration hudson

110
推荐指数
7
解决办法
11万
查看次数

你如何从Jenkins运行NUnit测试?

我正在寻找为C#应用程序运行自动NUnit测试,每晚和每次提交到svn.

这是Jenkins-CI能做的吗?
是否有在线教程或如何记录哪些文档类似我可以查看的设置?

c# continuous-integration hudson jenkins

105
推荐指数
4
解决办法
7万
查看次数

如何将msbuild升级到C#6?

我想在我的项目中使用C#6(空传播,其他功能).

我在我的电脑上安装了VS 2015,它的工作非常出色并构建了测试代码

var user = new SingleUserModel(); //all model fields are null
var test = user.User?.Avatar?["blah"];
Run Code Online (Sandbox Code Playgroud)

但是当我将我的项目推送到repo并且CI开始构建它时,由于不支持,构建失败?.

我已经在CI服务器上安装了VS2015,但是喜欢它不使用它.我能做什么?

CI - CruiseControl .NET构建 C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe

c# msbuild continuous-integration roslyn c#-6.0

103
推荐指数
3
解决办法
5万
查看次数

进行持续集成时的最佳分支策略?

当您想要进行持续集成时,最佳分支策略是什么?

  1. Release Branching:在trunk上开发,为每个版本保留一个分支.
  2. 特征分支:在单独的分支中开发每个特征,仅合并一次稳定.

将这两种策略结合使用是否有意义?在,你为每个版本分支,但你也分支大型功能?这些策略中的一个是否与持续集成更好地结合?使用不稳定的行李箱时,使用持续集成是否有意义?

svn version-control continuous-integration branch

99
推荐指数
5
解决办法
6万
查看次数

"构建服务器"有什么意义?

我没有为非常大的组织工作,我从来没有为一家拥有"构建服务器"的公司工作过.

他们的目的是什么?为什么开发人员不在本地计算机上构建项目,或者是他们?有些项目是否如此之大,以至于需要更强大的机器才能在合理的时间内构建它?

我看到构建服务器有用的唯一地方是与构建服务器持续集成,不断构建提交到存储库的内容.是不是我还没有做过足够大的项目?

有人,请赐教:构建服务器的目的是什么?

agile continuous-integration build-process build-server

99
推荐指数
6
解决办法
5万
查看次数

Hudson或Teamcity持续整合?

我们是一家寻找CI工具的Java商店.无论哈德森TeamCity的似乎是免费的,但TeamCity的似乎雨衣,并与更多的支持.

我想知道为什么一个人仍然会使用哈德森,如果有人可以提供任何论据/反对?

teamcity continuous-integration hudson jenkins

98
推荐指数
6
解决办法
4万
查看次数

.NET 4.0在CI服务器上构建问题

任何人都设法在CI服务器上编译.NET 4.0应用程序,而无需在CI服务器上安装Visual Studio 2010?

.NET 4.0不存在SDK.在CI服务器上安装了.NET 4.0.Msbuild.exe适用于简单项目并发出以下警告:

(GetReferenceAssemblyPaths目标) - > C:\ Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(847,9):警告MSB3644:框架".NETFramework,Version = v4.0"的引用程序集没找到.要解决此问题,请为此框架版本安装SDK或Targeting Pack,或者将应用程序重新定位到已安装SDK或Targeting Pack的框架版本.请注意,程序集将从全局程序集缓存(GAC)中解析,并将用于代替引用程序集.因此,您的程序集可能无法正确定位到您想要的框架.

.net msbuild continuous-integration build .net-4.0

98
推荐指数
3
解决办法
3万
查看次数

在Grunt任务中运行命令

我在我的项目中使用Grunt(基于任务的JavaScript项目命令行构建工具).我已经创建了一个自定义标记,我想知道是否可以在其中运行命令.

为了澄清,我正在尝试使用Closure模板,"任务"应该调用jar文件将Soy文件预编译为javascript文件.

我从命令行运行这个jar,但是我想把它设置为一个任务.

javascript continuous-integration templates google-closure-compiler gruntjs

93
推荐指数
5
解决办法
7万
查看次数

在travis-ci上使用秘密api密钥

我想在我的一个项目中使用travis-ci.

该项目是一个API包装器,因此许多测试依赖于使用秘密API密钥.要在本地测试,我只是将它们存储为环境变量.什么是在Travis上使用这些键的安全方法?

api continuous-integration api-key travis-ci

90
推荐指数
3
解决办法
2万
查看次数

CI服务器的比较?

我正在寻找不同的 持续集成(CI)服务器(特别是关注.NET)的比较,但找不到任何.

因此,我想知道您对可用的不同解决方案的看法,优缺点是什么,托管要求是什么以及为什么CI Server XY是您选择的服务器.

我对你的想法很感兴趣(随意评论别人):

兴趣点是:

  • 配置(简单,灵活)
  • 与SCM集成(特别是像git或hg一样的DSVC)
  • 与构建系统集成(MSBuild,NAnt,Rake)
  • 与测试框架集成
  • 与Source Anaylsis集成(Simian,NDepend,FxCop,NCover等)
  • WebInterface /仪表板
  • 基础设施要求

.net comparison continuous-integration

87
推荐指数
4
解决办法
5万
查看次数