# versionControlDescriptors

> An array containing all available version control systems.

## Definition

* **Type:** Property
* **Namespace:** [UnityEditor.VersionControl](/engine/6000.7/script-reference/unityeditor/versioncontrol.md)
* **Assembly:** UnityEditor.CoreModule

```csharp
public static VersionControlDescriptor[] versionControlDescriptors { get; }
```

### Remarks

Each [VersionControlDescriptor](/engine/6000.7/script-reference/unityeditor/versioncontrol/versioncontroldescriptor.md) contains a unique VCS name. You can pass the VCS name to [VersionControlManager.SetVersionControl](/engine/6000.7/script-reference/unityeditor/versioncontrol/versioncontrolmanager/setversioncontrol.md) to activate that VCS.

```csharp
using UnityEditor;
using UnityEditor.VersionControl;
using UnityEngine;

static class Example
{
    [MenuItem("Example/Print Available VCS")]
    static void PrintAvailableVCS()
    {
        var message = "Available version control systems:";
        foreach (var descriptor in VersionControlManager.versionControlDescriptors)
            message += " " + descriptor.displayName;
        Debug.Log(message);
    }
}
```

Additional Resources: [VersionControlManager](/engine/6000.7/script-reference/unityeditor/versioncontrol/versioncontrolmanager.md), [VersionControlObject](/engine/6000.7/script-reference/unityeditor/versioncontrol/versioncontrolobject.md), [VersionControlDescriptor](/engine/6000.7/script-reference/unityeditor/versioncontrol/versioncontroldescriptor.md).
