Unity 6.3
0 онлайн 62 гостей 3 в системе
Вход

Provider.Resolve

Declaration

public static VersionControl.Task Resolve(VersionControl.AssetList assets, VersionControl.ResolveMethod resolveMethod);

Параметры

Параметр Описание
ассетов Перечень ассетов, подлежащих урегулированию.
resolveMethod Каким образом следует урегулировать вопрос об ассетах.

Описание

Запускает задачу, которая разрешит конфликтующие ассеты в управлении версиями.

Когда возникают конфликты между хранилищем и локальной версией ассета, вы можете разрешить их, сохранив либо свою копию, либо входящую копию.

using System.Collections.Generic;
using UnityEditor;
using UnityEditor.VersionControl;
using UnityEngine;

public class EditorScript : MonoBehaviour { [MenuItem("Version Control/ResolveUseTheirs")] public static void ExampleResolve() { AssetList assets = new AssetList(); assets.Add(Provider.GetAssetByPath("Assets/ExampleAsset.cs")); Task t = Provider.Resolve(assets, ResolveMethod.UseTheirs); t.Wait(); } }

Приведенный выше код разрешит конфликт файла "ExampleAsset.cs" путем отказа от локальных изменений и сохранения только входящих изменений.

using System.Collections.Generic;
using UnityEditor;
using UnityEditor.VersionControl;
using UnityEngine;

public class EditorScript : MonoBehaviour { [MenuItem("Version Control/ResolveUseMerged")] public static void ExampleResolve() { AssetList assets = new AssetList(); assets.Add(Provider.GetAssetByPath("Assets/ExampleAsset.cs")); Task t1 = Provider.Merge(assets); t1.Wait(); Task t2 = Provider.Resolve(assets, ResolveMethod.UseMerged); t2.Wait(); } }

Вышеприведенный код показывает третий способ разрешения конфликта — слияние двух версий вместе. Правильный способ сделать это — сначала вызвать задачу Provider.Merge на конфликтующих ассетах, а затем разрешить их с помощью задачи Provider.Resolve с методом ResolveMethod.UseMerged.