如何从 Visual Studio 中排除文件,但在发布时仍然部署它们?
How can I exclude files from Visual Studio, but still deploy them upon publishing?
我们在 Visual Studio 2019 年遇到了严重的减速,部分原因是我们的 wwwroot 文件夹中包含大量内容(约 12,000 个文件)。此内容很少更改,但当我们执行不需要的 "Find in files..." 等操作时,它最终会被搜索,并最终减慢 adding/renaming 类 等正常操作。
有什么方法可以将内容保留在源代码管理中,将其从 Visual Studio 中排除,但在我们发布时仍然部署它?
我无法确定这是否可能是使用 DefaultItemExcludes 等设置或 ItemGroup 元素上的各种选项来编辑 csproj 文件。
以下是我们为(希望)解决这个问题所做的工作:
在 PropertyGroup 中的 WebApp.csproj 文件中添加了以下行:
<ProjectGroup>
<DefaultItemExcludes>$(DefaultItemExcludes);wwwroot\hugecontentfolder\**</DefaultItemExcludes>
</ProjectGroup>
庞大的内容文件夹保留在源代码管理中,这简化了事情,因为我们需要将这些文件放在本地进行开发
我们用新任务更新了 Azure DevOps 管道,以将该文件夹的内容从源代码管理复制到构建工件暂存目录
更新了 Dotnet Publish Azure Devops 任务以不再压缩它的输出
另一个新的 Azure DevOps 任务将构建工件暂存目录(现在有未压缩的 dotnet 发布输出,以及正确位置的巨大内容文件夹输出)存档到 zip文件发布。
我们在 Visual Studio 2019 年遇到了严重的减速,部分原因是我们的 wwwroot 文件夹中包含大量内容(约 12,000 个文件)。此内容很少更改,但当我们执行不需要的 "Find in files..." 等操作时,它最终会被搜索,并最终减慢 adding/renaming 类 等正常操作。
有什么方法可以将内容保留在源代码管理中,将其从 Visual Studio 中排除,但在我们发布时仍然部署它?
我无法确定这是否可能是使用 DefaultItemExcludes 等设置或 ItemGroup 元素上的各种选项来编辑 csproj 文件。
以下是我们为(希望)解决这个问题所做的工作:
在 PropertyGroup 中的 WebApp.csproj 文件中添加了以下行:
<ProjectGroup> <DefaultItemExcludes>$(DefaultItemExcludes);wwwroot\hugecontentfolder\**</DefaultItemExcludes> </ProjectGroup>
庞大的内容文件夹保留在源代码管理中,这简化了事情,因为我们需要将这些文件放在本地进行开发
我们用新任务更新了 Azure DevOps 管道,以将该文件夹的内容从源代码管理复制到构建工件暂存目录
更新了 Dotnet Publish Azure Devops 任务以不再压缩它的输出
另一个新的 Azure DevOps 任务将构建工件暂存目录(现在有未压缩的 dotnet 发布输出,以及正确位置的巨大内容文件夹输出)存档到 zip文件发布。