list | 将传递给签出命令的资源列表。可以在回调中从该列表中移除或添加资源。 |
changesetID | 将其设置为现有变更集的 ID,以在该变更集中签出列出的资源。如果找不到与指定 ID 匹配的变更集,则签出将被阻止并引发错误消息。请勿同时设置此参数和 changesetDescription 参数 - 这不受支持,并且会引发错误。 |
changesetDescription | 要在新的变更集中签出资源,请设置此描述字符串。此操作会创建一个新的变更集,其中资源处于打开状态。请勿同时设置此描述字符串和 changesetID 参数。同时设置两者会导致错误。 |
用于在版本控制签出之前调用的用户提供的回调的委托。
可以设置 PreCheckoutCallback 以启用以下功能:通过从回调中返回 true 来允许签出。通过从回调中返回 false 来阻止签出。修改要签出的资源列表(您可能希望阻止某些资源被签出,或确保某些资源被签出)。将签出重定向到现有变更集。创建一个新的变更集以在其中签出资源。
注释:AssetList 是绝对的 - 在此回调返回后,不会自动添加资源和/或其元文件。理想情况下,同时设置 changesetID 和 changesetDescription 应该允许重命名现有变更集(以更改其描述),但这目前不受支持。如果 VCS 提供程序不支持变更集,则尝试设置 changesetDescription 将引发错误。通过调用 Provider.hasChangelistSupport 检查支持情况。您不得在此回调内部调用导致创建进一步签出操作的任何代码,因为这将导致潜在的无限递归。注意域重新加载。如果您的程序集在任何时候都被重新加载,则需要使用您选择的回调再次设置 Provider.preCheckoutCallback。
其他资源:Provider.preCheckoutCallback、Provider.Checkout、AssetDatabase.MakeEditable。