2014-08-28 109 views
1

我正在使用TFS 2008和2010,并且我认为当您检入未更改的文件时,TFS应自动确定没有更改,并撤消更改而不是创建新的更改它。TFS提交未更改的文件

为了测试这个,我只是简单地检查我的解决方案中的任何单个文件(例如web.config)。然后,我(不作任何改动)立即检查它。我查看文件的历史记录,看看它有一个新的变更集。当我将该文件与前一版本进行比较时,它会显示“文件完全相同”。

我认为它不应该创建一个新的变更集,因为该文件没有改变。我认为这是它应该工作的方式,我也认为这是它为我工作的方式。我错了吗?有没有人有关于我如何解决这个问题的想法?

回答

0

我确定了导致我的问题的原因。我的组织最近在所有计算机上启用了本地安全策略设置“系统加密:使用符合FIPS的算法进行加密,散列和签名”。显然,VS/TFS 2008和2010并没有完全处理这个设置,文件检入/比较是导致冲突的一个地方。

按照设计,VS 2008和VS 2010应该只提交确实已更改的文件。如果某个文件处于待处理状态但尚未进行实际修改,则应在您告诉它检查该文件时撤消检出。但是,启用FIPS设置后,似乎无论如何都会提交该文件。

要解决此问题,需要禁用FIPS设置并重新启动Visual Studio。

0

如果您使用的是本地工作区,但不适用于服务器工作区, 2012年的TFS 2012中引入了本地工作区,并且与以前的版本不具有可比性。

我注意到2010年更不用说2008年了,但是如果我没有记错的话,您明确表示要检查整个解决方案然后登记。在服务器workspce中,为了提高潜在性能大型代码库不会执行这些检查。