public static VersionControl.Task Checkout (string asset, VersionControl.CheckoutMode mode);
public static VersionControl.Task Checkout (string asset, VersionControl.CheckoutMode mode, VersionControl.ChangeSet changeset);
public static VersionControl.Task Checkout (string[] assets, VersionControl.CheckoutMode mode);
public static VersionControl.Task Checkout (string[] assets, VersionControl.CheckoutMode mode, VersionControl.ChangeSet changeset);
public static VersionControl.Task Checkout (Object asset, VersionControl.CheckoutMode mode, VersionControl.ChangeSet changeset);
public static VersionControl.Task Checkout (Object asset, VersionControl.CheckoutMode mode);
public static VersionControl.Task Checkout (Object[] assets, VersionControl.CheckoutMode mode);
public static VersionControl.Task Checkout (Object[] assets, VersionControl.CheckoutMode mode, VersionControl.ChangeSet changeset);

Parameters

assetsList of assets to checkout.
assetAsset to checkout.
modeTell the Provider to checkout just the asset file, the .meta file or both.
changesetTell the Provider to checkout the assets to a specific changeset.

Description

Checkout an asset or a list of assets from the version control system.

Some version control systems like Perforce or Plastic SCM require an asset to be checked out before it can be edited.

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

public class EditorScript : MonoBehaviour { [MenuItem("Version Control/Checkout")] public static void ExampleCheckout() { AssetList assets = new AssetList(); assets.Add(Provider.GetAssetByPath("Assets/ExampleAsset.cs")); ChangeSet changeset = new ChangeSet("Description", "1111"); Task t = Provider.Checkout(assets, CheckoutMode.Both, changeset); t.Wait(); } }

The code above will checkout the "ExampleAsset.cs" asset and move it to a changeset with an ID of "1111".