使用 VSTS 处理小型 .NET 开发团队的 Nuget 包错误

Handling Nuget package errors on a small .NET development team using VSTS

问题背景:我在使用 VSTS 正确设置我的新团队成员项目和我们的 .NET 项目时遇到了问题。这些问题与 Nuget 包有关。我们解决方案中每个项目中的引用都有很多警告。

问题:在一个 4 人的小团队中,你会如何处理这个问题?我正在考虑执行以下一项或两项操作。

创建新项目

  1. 创建项目
  2. 添加.tfignore
  3. 移过代码
  4. 重新添加引用并确保它们不会被忽略,并且 未上传到 tfs

在 VSTS 中创建构建服务器

  1. 使用构建服务器作为受控 space 并在团队成员的机器上复制它的环境。我认为这是它的目的之一。我对此了解最少,仍在收集详细信息。

我可能错过了一个我应该使用的工具。你有什么想法?

不需要在源代码管理中添加包。您可以在 TFVC 存储库的根目录中使用一个 .tfignore 来排除不同解决方案中的所有包。

您可以按照以下步骤操作:

  1. 创建您的项目并.tfignore

    在您的 TFVC 存储库的根目录中创建 .tfignore 文件,并添加以下内容以忽略包、构建工件文件等:

    **\*.suo
    **\*.user
    
    # Build results
    **\bin
    **\obj
    
    #include nuget executable
    !**\NuGet.exe
    
    #nuget packages directory
    **\packages
    
    #include package target files which may be required for msbuild
    !**\packages/*.targets
    
    # Publish Web Output
    **\*.Publish.xml
    **\*.pubxml
    
    **\.vs
    
  2. 将项目和 .tfignore 添加到源代码管理中

    在源代码管理资源管理器中,单击 Add Items to folder、select .tfignore 和项目。

    然后确保未添加每个项目的 packages 文件夹。

    如果添加了 packages 文件夹,则使用 撤消挂起的更改 删除源代码管理中的包文件夹。

  3. 签入更改

    在待定更改中,签入更改。

另外,除了上面的方法,你还可以参考Donovan Brown的post How to keep packages folder out of TFVC