繁体   English   中英

csproj / msbuild是否可以将文件包含为可选内容?

[英]Is it possible for csproj/msbuild to include files as optional content?

我的应用程序中有一个可选的配置文件,用于特定于实例的配置。 该应用程序在没有它的情况下可以运行,并且只有在您想要配置一些其他功能时才需要。 因此,不应将它包含在源代码管理中,因为每个开发人员和客户端部署都不需要它,而这样做的人将具有不同的价值。

我在弄清楚如何配置它以进行连续部署时遇到问题。 我可以在构建服务器上生成文件而不会出现问题。 但是 ,由于MsDeploy读取csproj以确定要部署的文件,因此我的csproj必须跟踪此文件才能将其实际移动到部署服务器。 但是,如果我的csproj跟踪了它,则它不再是可选的,没有它,我将无法构建应用程序。 我使用的是Mercurial,它没有提交一个版本-忽略-后继功能(git的--assume-unchanged ),因此在这方面的选项似乎非常有限。 我坚信,应该可以克隆回购协议并立即运行项目,所以我真的不喜欢提交无法构建的东西的想法。

csproj文件中是否有一种方法指示文件(如果存在)应作为内容包括在内,否则被忽略?

如果这是目录中唯一的.config文件,则可以手动编辑.csproj文件以通过文件掩码引用您的文件:

<ItemGroup>
    <Compile Include="*.config"/>
</ItemGroup>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM