我的项目的.gitignore
文件夹中有一个wwwroot
文件,我试图将其排除在发布之外。以下代码似乎不起作用:
<ItemGroup>
<Content Include="wwwroot\.gitignore">
<CopyToPublishDirectory>Never</CopyToPublishDirectory>
</Content>
</ItemGroup>
当我使用dotnet publish
命令发布项目时,仍会在输出目录中找到.gitignore
文件。
答案 0 :(得分:21)
您必须像Update
这样使用:
<Content Update="wwwroot\.gitignore">
<CopyToPublishDirectory>Never</CopyToPublishDirectory>
</Content>
答案 1 :(得分:1)
替换您的代码
<Content Include="wwwroot\.gitignore"> with
<None Include="wwwroot\.gitignore">
我是怎么知道的? 在浏览.csproj文件的代码时,我遇到了这个标签(无),它由visual studio放在所有发布配置文件的文件(.pubxml)前面。所以我也尝试了我的文件,它就像一个魅力。
build action属性上的MSDN文章解释了这些差异。
答案 2 :(得分:0)
不幸的是,投票的答案对我不起作用。我有一个ASP.NET Core Web项目,并且正在使用Web Deploy到远程服务器。我试图将wwwroot下的整个文件夹排除在部署之外,经过各种试验和不同的组合之后,对我有用的唯一东西是两者的组合:
AND
wwwroot\\profiles
更改为要排除的目录。您还必须为要排除的每个文件夹重复整个代码段: <ItemGroup>
<MsDeploySkipRules Include="CustomSkipFolder">
<ObjectName>dirPath</ObjectName>
<AbsolutePath>wwwroot\\profiles</AbsolutePath>
</MsDeploySkipRules>
</ItemGroup>