所以,我今天通过检查配置文件杀死了构建.它知道服务器的位置(想想SQL服务器等),而且我一直在反对在我的盒子上运行的服务器.通常,或者更确切地说,在其他情况下,我们会针对中央服务器运行.当然,每日构建没有找到"我的"服务器,因此破损.然后,再次编辑配置文件以在签入之前指向"正常"服务器,并在签入之后再次编辑它.
我一直想让VC忽略配置文件,这样就不会意外地检查它.另一方面,存储库应包含一个干净,可用的文件版本.我不可能忽略它,同时检查它,现在,我可以吗?
所以,我正在寻找的是一种方法,有一个文件,错误,检查,但永远不会检入.至少在最常见的情况下 - 如果配置文件发生重大变化,一些特殊的程序,以获得进入存储库的新版本是可行的.
如果您以前遇到过这个问题,我会对您找到的任何解决方案感兴趣.只要它们不打破构建,那就是;)
除非添加了一些新配置,否则您可以执行的默认配置文件保持不变.然后你有一个不同的文件覆盖默认文件的配置.
config.Default.xml config.User.xml
只有config.Default.xml是源控制的.config.User.xml仅包含与您不同的配置.因此,假设您正在本地SQL服务器上进行测试,您只将连接字符串放在那里,它将覆盖config.Default连接字符串.
看看.Net Framwork Application Configuration,它可以为您完成大部分(如果不是全部)工作.