我有一个小问题,导致我的自动化构建失败。
当我们打开最近从VS2005转换到VS2008的解决方案时,通过ClearCase请求检出解决方案文件。
如果我们允许它,则不会进行任何更改,并且默认情况下ClearCase不喜欢没有更改的签入。因此,我们撤销了检出 - 从那时起,VS很高兴,它能够写入.suo文件。
如果我们取消保护解决方案文件,启动VS2008,它可以正常创建.suo文件,如果我们然后取消劫持.sln文件(无论如何都没有更改,所以VS2008不会注意到),再次启动VS2008,它就可以正常工作,不需要检出。
在我的构建脚本中,我从视图中删除所有私有文件,然后强制升级受控文件的非劫持版本。然后我们构建部署项目(以及所有依赖项),由于正在删除.suo文件,因此每次都会出现检出.sln文件行为。
而在构建服务器上,没有人看到要求检出的对话框,构建挂起。
我可以更改(修补)构建脚本以不删除.suo文件,但我宁愿不这样做。
编辑:澄清- .suo文件未检入ClearClase-它是由VS2008创建的视图私有文件,但是要创建此文件,它需要无实际原因地检出.sln文件。
进一步编辑:
我已经找到了解决办法-我已根据此线程上的后续帖子禁用了集成。
当我们打开最近从VS2005转换到VS2008的解决方案时,通过ClearCase请求检出解决方案文件。
如果我们允许它,则不会进行任何更改,并且默认情况下ClearCase不喜欢没有更改的签入。因此,我们撤销了检出 - 从那时起,VS很高兴,它能够写入.suo文件。
如果我们取消保护解决方案文件,启动VS2008,它可以正常创建.suo文件,如果我们然后取消劫持.sln文件(无论如何都没有更改,所以VS2008不会注意到),再次启动VS2008,它就可以正常工作,不需要检出。
在我的构建脚本中,我从视图中删除所有私有文件,然后强制升级受控文件的非劫持版本。然后我们构建部署项目(以及所有依赖项),由于正在删除.suo文件,因此每次都会出现检出.sln文件行为。
而在构建服务器上,没有人看到要求检出的对话框,构建挂起。
我可以更改(修补)构建脚本以不删除.suo文件,但我宁愿不这样做。
编辑:澄清- .suo文件未检入ClearClase-它是由VS2008创建的视图私有文件,但是要创建此文件,它需要无实际原因地检出.sln文件。
进一步编辑:
我已经找到了解决办法-我已根据此线程上的后续帖子禁用了集成。