4

我们最近从 Visual Studio 2010 迁移到 Visual Studio 2012。我们仍在使用 TFS 2010 并且使用门控签入。由于我们开始使用 Visual Studio 2012,当签入 VS 时,会自动将我们项目之一的输出文件夹中的 pdb 文件包含到变更集中。当然,我们可以手动将它们从签入中排除,但这可能会导致错误,因为如果有人忘记排除这些文件,签入后的所有构建都会失败。

我不想阻止 pdb 文件被签入,我只想将默认设置为排除。事实上,在 Visual Studio 2010 中,这些甚至都没有作为更改自动添加到源代码管理中。

最奇怪的部分是,如果默认情况下转到团队资源管理器并“将项目添加到文件夹”,所有 pdb 文件都将被排除(这是正确的行为),所以我不明白为什么 Visual Studio 将输出文件夹中的 pdb 文件添加到变更集。

更新 在尝试了所有的建议之后,问题仍然存在。我已经从 TFS 中删除了 bin 文件夹,但 Visual Studio 2012 继续在变更集中的输出文件夹中包含 DLL。与此同时,我们升级到 TFS 2012,但问题仍然存在。

4

2 回答 2

3

您可以添加一个 tfs .tfignore 文件,您可以在其中添加 *.pdb 文件以自动排除它们。您可以在文件夹或项目级别添加此文件。

自定义版本控制忽略哪些文件

另一种解决方案:

假设您拥有必要的权限,

  1. Team Explorer 右键单击​​根服务器名称,将鼠标悬停在 Team Foundation Server 设置上,
  2. 选择源代码管理文件类型。将打开一个窗口,列出 TFS 可立即识别的所有文件类型。
  3. 选择要从源代码管理中排除的文件类型,然后单击“删除”按钮。注意 - 这适用于 TFS 服务器上的所有项目。
于 2013-05-24T12:49:38.683 回答
0

通常,您根本不应该签入输出文件夹。如果您没有签入输出文件夹,那么您将不会签入 .pdb 文件。

于 2013-05-24T13:17:53.860 回答