2013-05-17 37 views
1

我在构建jenkins构建作业时发生错误,可以通过在构建之前删除工作区来解决这个问题。詹金斯颠覆“检出新鲜副本”vs“消除工作区”

作为供应链管理我们使用颠覆与检出策略:总是检查出新副本。 我认为这个策略是等价的:

  1. 消灭工作区
  2. svn签

显然我忽视的东西引起了我的问题只解决了,当我手动擦拭出工作。任何人都可以解释为什么“新鲜复制检查”不能完成这项工作吗?

额外的信息:

  • 我的svn签了就是 “”工作区
  • 内构建项目是一个.NET解决方案
  • 生成错误:CSC:错误CS0016:无法写入到输出文件。这是关于一个中间输出文件。
  • 我知道工作区消除是一种解决方法,但我想明白为什么手动消除这个工作并且新鲜的svn check out没有。

回答

1

我的理解和经验,詹金斯和SCM(但与另一个供应链的完整性 - 完整性)是检查出一个新的副本意味着,从SCM所有文件都被牵强,但是,在工作区中的所有文件不是来自SCM而是保持不变。如果工作空间中的文件出于某种原因不应进入SCM,这是有用的。

+0

感谢@ hpschr为您的答案。这也是我现在所经历的。 –

+0

有点误导甚至是错误的是,在_always下面的Jenkins中的注释检查了一个新的copy_选项,它说“首先删除所有内容,然后执行'svn checkout'。虽然这需要时间来执行,但它确保工作区处于原始状态“。如果你真的想要一个清晰的工作区,那么Jenkins插件。看到这个线程:http://stackoverflow.com/questions/28683914/is-there-any-way-to-cleanup-jenkins-workspace – Buka