版本: Unity 6 (6000.0)
语言English
  • C#

Provider.PreCheckoutCallback

建议更改

成功!

感谢您帮助我们提高 Unity 文档的质量。虽然我们无法接受所有提交,但我们会阅读用户提出的每个建议更改,并在适用时进行更新。

关闭

提交失败

由于某些原因,您的建议更改无法提交。请<a>稍后再试</a>。感谢您抽出时间帮助我们提高 Unity 文档的质量。

关闭

取消

声明

public delegate bool PreCheckoutCallback(VersionControl.AssetList list, ref string changesetID, ref string changesetDescription);

参数

list 将传递给签出命令的资源列表。可以在回调中从该列表中移除或添加资源。
changesetID 将其设置为现有变更集的 ID,以在该变更集中签出列出的资源。如果找不到与指定 ID 匹配的变更集,则签出将被阻止并引发错误消息。请勿同时设置此参数和 changesetDescription 参数 - 这不受支持,并且会引发错误。
changesetDescription 要在新的变更集中签出资源,请设置此描述字符串。此操作会创建一个新的变更集,其中资源处于打开状态。请勿同时设置此描述字符串和 changesetID 参数。同时设置两者会导致错误。

描述

用于在版本控制签出之前调用的用户提供的回调的委托。

可以设置 PreCheckoutCallback 以启用以下功能:通过从回调中返回 true 来允许签出。通过从回调中返回 false 来阻止签出。修改要签出的资源列表(您可能希望阻止某些资源被签出,或确保某些资源被签出)。将签出重定向到现有变更集。创建一个新的变更集以在其中签出资源。

注释:AssetList 是绝对的 - 在此回调返回后,不会自动添加资源和/或其元文件。理想情况下,同时设置 changesetID 和 changesetDescription 应该允许重命名现有变更集(以更改其描述),但这目前不受支持。如果 VCS 提供程序不支持变更集,则尝试设置 changesetDescription 将引发错误。通过调用 Provider.hasChangelistSupport 检查支持情况。您不得在此回调内部调用导致创建进一步签出操作的任何代码,因为这将导致潜在的无限递归。注意域重新加载。如果您的程序集在任何时候都被重新加载,则需要使用您选择的回调再次设置 Provider.preCheckoutCallback

其他资源:Provider.preCheckoutCallbackProvider.CheckoutAssetDatabase.MakeEditable