我无法让msdeploy
只跳过root web.config(我想保留根目录下的子文件夹中存在的任何web.config文件)
这是我正在使用的参数:
-skip:objectName=filePath,absolutePath=^\\web\.config
我尝试了^\\web\.config
,\\web\.config
和文件的绝对路径,例如:C:\\Some Path\\web\.config
。这些似乎都不起作用。
答案 0 :(得分:2)
我设法解决了这个问题。
您必须使用完整的源路径才能跳过目标 root web.config。 msdeploy
似乎使用此正则表达式过滤器的源路径。
-skip:objectName=filePath,absolutePath=\\\\servername\\c\$\\syncpath\\web\.config
希望将来可以帮助其他人。
编辑 - 其他信息
除此之外,如果你在子目录中跳过web.config文件,你还需要正则表达式中的目标dir和web.config,如下所示:
-skip:objectName=filePath,absolutePath=\\\\servername\\c\$\\syncpath\\web\.config|TargetFolder\\web\.config
这将阻止msdeploy在目标web.config上发出delete指令。
请注意,正则表达式比较不区分大小写。