msdeploy`OfterTargets =“MSDeployPublish”`从VS

时间:2016-07-21 09:31:38

标签: visual-studio visual-studio-2015 msbuild

我有一个目标,在我的csproj中发布后执行:

<Target Name="CustomPostPublishActions" AfterTargets="MSDeployPublish">
  <Message Text="After publish" Importance="high" />
  <Exec Command="git branch -f $(PublishProfile)" />
</Target>

当我从命令行发布时,确实会调用它:

msbuild /p:DeployOnBuild=true /p:PublishProfile=Staging /p:Password=*** /p:AllowUntrustedCertificate=true

然而,从Visual Studio发布时不会受到影响。我也没有看到消息,git也没有移动分支指针。

我能尝试什么想法?

修改

对于那些关心的人,这里的问题是从VS发布时没有设置PublishProfile。适用于VS和命令行的属性是PublishProfileName

1 个答案:

答案 0 :(得分:2)

在VS(工具|选项|项目和解决方案|构建和运行)中启用“详细”构建调试

enter image description here

同样在命令行设置MSBuild详细程度。

/v:detailed

然后比较每个的输出以找出差异。

仅供参考 - 我无法重现您的情况,但这可以帮助您进一步调试。