【问题标题】:Deploy sync error: maximum number of sync passes '5' has been exceeded部署同步错误:已超过最大同步传递次数“5”
【发布时间】:2012-01-25 21:13:40
【问题描述】:

在对特定 IIS 站点运行 Web 部署时,我收到以下错误:

Error: The synchronization is being stopped because the maximum number of sync passes '5' has been exceeded even though all the changes could not be applied. This could occur if there are external changes being made to the destination.
 At C:\Code\.....\deploy.ps1:185 char:10
 +         & <<<< ($appDeployCmd) $type /M:$url /U:$user /P:$pass /A:Basic -allowUntrusted -useCheckSum
 + CategoryInfo          : NotSpecified: (Error: The sync...he destination.:String) [], RemoteException
 + FullyQualifiedErrorId : NativeCommandError

Web Deploy 在此环境中针对其他 IIS 站点运行良好,并且文件同步也正常运行。我以前能够使用 web deploy 来部署这个特定的站点而没有问题。突然之间,这个问题开始发生,我无法再部署这个网站。

我正在使用从 msbuild 构建的包进行基本站点部署。我认为具体细节并不那么重要,因为正如我所说,这一切都在以前有效,并且目前适用于同一服务器场上的其他网站而没有问题。

错误信息说:

“如果对目标进行了外部更改,则可能会发生这种情况。”

但我不确定如何追踪它,或者它是否是一开始的问题。我已确保所有远程会话中的所有资源管理器窗口都已关闭。我已经尝试重新启动站点和应用程序池。我唯一没有尝试过的是重新启动服务器,这目前是不可能的。

任何想法可能导致此 Web 部署失败?

【问题讨论】:

    标签: webdeploy


    【解决方案1】:

    我遇到了同样的错误,问题出在我的保管箱上。 我是直接在我的dropbox文件夹中工作的,当你发布的时候,它会导致dropbox同时同步,从而导致错误。

    在工作时禁用 Dropbox 同步解决了这个问题。

    我发现问题也可能发生在 onedrive、google drive 等上。

    【讨论】:

    • 啊,你的冠军,我总是在 Dropbox 之外工作,我经常收到这个错误。现在很有意义。
    • 这似乎不太可能,但你是对的!很抱歉怀疑你 :) 我退出了我机器上的保管箱进程,一切正常。
    • 太棒了!将我的保管箱同步暂停,它起作用了。非常感谢!
    • 不只是保管箱,即使使用 onedrive 我也遇到了同样的问题。我暂停了同步,它起作用了。
    【解决方案2】:

    我们在从以前的临时部署服务转换到 MSDeploy 时遇到了这个问题,并发现如果有文件是

    然后我们会在部署时收到“最大同步传递次数”错误。

    一旦我们修复了属性/ACL,我们就可以同步了。

    【讨论】:

    • 当我尝试发布单个文件夹(例如 ~/Content/themes/base.但是,当我首先检查文件夹中的所有文件时,发布成功。对我来说,这似乎是 VS 2013 中的一个错误。
    • 我在发布只读文件时遇到了这个问题。当我使用 Perforce 时,只需签出文件即可进行发布。
    • 为我工作,在发布前再次保存文件的简单案例。 (有问题的文件是一个 sass 文件,其中包含我正在处理的文件,因此我从来没有真正需要保存它。)
    【解决方案3】:

    解决此问题的快速简便的方法是删除目标中的文件,然后重新运行 Web 部署。

    问题似乎与网络部署的 ACL 步骤有关,该步骤试图更改网站文件的权限,作为一种安全措施,旨在确保在部署期间不会更改它们。

    默认情况下,Web Deploy 将站点匿名用户的 ACL 设置为只读,同时还会覆盖对您网站的控制面板访问权限。

    Source

    如果您愿意,您可以在以后关闭 ACL 来避免这种情况,但这并不值得。这也将加快网络部署 - 但这是一个单独的问题。

    【讨论】:

    • 这对我有用。我从外部应用程序修改了一个文件,然后遇到了这个问题。然后我删除了目标服务器上的文件并运行 web 部署。它奏效了。
    【解决方案4】:

    不是真正的答案,但如果您使用 Web 部署 dirPathfilePathcontentPath 提供程序,则可以尝试一种解决方法是 ignoreErrors 提供程序设置。如果您知道自己一直在遇到某个错误编号,则可以指定在遇到该错误时忽略该错误。请参阅dirPath 提供者文章了解完整详情(和注意事项)。

    【讨论】:

      【解决方案5】:

      在我的情况下,我无法修复它,但我意识到部署无论如何都有效。 如果您正在阅读本文,我不建议只是假设它有效,并且如果它确实已完全部署,但请考虑这可能是一个误报!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-01-08
        • 1970-01-01
        • 1970-01-01
        • 2016-12-06
        • 2020-07-09
        • 1970-01-01
        • 1970-01-01
        • 2011-08-27
        相关资源
        最近更新 更多