2013-05-08 75 views
5

我不能让msdeploy只跳过了根web.config(我想保持存在于子文件夹的根目录下的任何web.config文件中)MSDeploy跳跃根web.config

这是参数我使用:

-skip:objectName=filePath,absolutePath=^\\web\.config 

我已经试过^\\web\.config\\web\.config和绝对路径的文件,如:C:\\Some Path\\web\.config。这些似乎没有工作。

回答

2

我设法解决这个问题。

你必须使用完整路径,以仅跳过目标根web.config。 msdeploy似乎使用此正则表达式过滤器的源路径。

这样的:

-skip:objectName=filePath,absolutePath=\\\\servername\\c\$\\syncpath\\web\.config 

希望这有助于别人出未来。

编辑 - 附加信息

在此之上,如果你是在一个子目录跳过web.config文件,你还需要一个目标目录和web.config中的正则表达式,像这样:

-skip:objectName=filePath,absolutePath=\\\\servername\\c\$\\syncpath\\web\.config|TargetFolder\\web\.config 

这将停止msdeploy在目标web.config上发出删除指令。

请注意,正则表达式比较不区分大小写。

+0

如何在不指定完整路径的情况下做到这一点 – 2016-03-10 11:57:24

+0

您可以使用相对路径,但如果从另一台服务器进行复制则没有任何意义 – Rots 2016-03-10 19:03:17