5

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

这是我正在使用的参数:

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

我已经尝试过^\\web\.config\\web\.config以及文件的绝对路径,例如:C:\\Some Path\\web\.config. 这些似乎都不起作用。

4

1 回答 1

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 上发出删除指令。

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

于 2013-08-02T00:04:27.757 回答