
# IVcsBasedProjectCommands interface

*No description yet.*

```csharp
public interface IVcsBasedProjectCommands
```

**Namespace:** DXP · **Assembly:** Altium.SDK.Interfaces

## Methods

| Method | Returns | Description |
| --- | --- | --- |
| [AddProjectFolderToVCS](#addprojectfoldertovcs) | `void` |  |
| [AddProjectToVCSNoUI](#addprojecttovcsnoui) | `bool` |  |
| [AddVCSRepository](#addvcsrepository) | `bool` |  |
| [CheckoutProjectNoUI](#checkoutprojectnoui) | `void` |  |
| [CommitProject](#commitproject) | `void` |  |
| [GetDesignVaultByGUID](#getdesignvaultbyguid) | [IVcsDesignVault](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IVcsDesignVault.md) |  |
| [GetDesignVaultByPath](#getdesignvaultbypath) | [IVcsDesignVault](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IVcsDesignVault.md) |  |
| [GetVcsProvider](#getvcsprovider) | [IVcsProvider](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IVcsProvider.md) |  |
| [GetVcsProvidersCount](#getvcsproviderscount) | `int` |  |
| [SelectRepositoryPath](#selectrepositorypath) | `bool` |  |

### AddProjectFolderToVCS

*No description yet.*

```csharp
void AddProjectFolderToVCS(IVcsProject argVCSProject, IVcsDesignVault argDesignVault, string argProjectFileName, string argProjectVCSPath);
void AddProjectFolderToVCS(object argVCSProject, object argDesignVault, string argProjectFileName, string argProjectVCSPath);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argVCSProject` | [IVcsProject](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IVcsProject.md) | value |
| `argDesignVault` | [IVcsDesignVault](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IVcsDesignVault.md) | value |
| `argProjectFileName` | `string` | value |
| `argProjectVCSPath` | `string` | value |

**Returns:** nothing (`void`)

The first overload is an extension method of `IVcsBasedProjectCommandsHelper` (`using DXP;`) with typed parameters; the second is declared by the interface.

### AddProjectToVCSNoUI

*No description yet.*

```csharp
bool AddProjectToVCSNoUI(IVcsProject argVCSProject, IVcsDesignVault argDesignVault, IVcsFileNames argFileNames, string argProject, string argProjectVCSPath, string argComment);
bool AddProjectToVCSNoUI(object argVCSProject, object argDesignVault, object argFileNames, string argProject, string argProjectVCSPath, string argComment);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argVCSProject` | [IVcsProject](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IVcsProject.md) | value |
| `argDesignVault` | [IVcsDesignVault](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IVcsDesignVault.md) | value |
| `argFileNames` | [IVcsFileNames](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IVcsFileNames.md) | value |
| `argProject` | `string` | value |
| `argProjectVCSPath` | `string` | value |
| `argComment` | `string` | value |

**Returns:** `bool`

The first overload is an extension method of `IVcsBasedProjectCommandsHelper` (`using DXP;`) with typed parameters; the second is declared by the interface.

### AddVCSRepository

*No description yet.*

```csharp
bool AddVCSRepository(string argRepositoryName, string argRepositoryPath, string argManagedRepositoryGUID, string argWorkingCopyDir, TProviderType argProviderType, TCreateKind argCreateKind, TRepositoryType argRepositoryType);
bool AddVCSRepository(string argRepositoryName, string argRepositoryPath, string argManagedRepositoryGUID, string argWorkingCopyDir, int argProviderType, int argCreateKind, int argRepositoryType);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argRepositoryName` | `string` | value |
| `argRepositoryPath` | `string` | value |
| `argManagedRepositoryGUID` | `string` | value |
| `argWorkingCopyDir` | `string` | value |
| `argProviderType` | [TProviderType](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/TProviderType.md) | value |
| `argCreateKind` | [TCreateKind](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/TCreateKind.md) | value |
| `argRepositoryType` | [TRepositoryType](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/TRepositoryType.md) | value |

**Returns:** `bool`

The first overload is an extension method of `IVcsBasedProjectCommandsHelper` (`using DXP;`) with typed parameters; the second is declared by the interface.

### CheckoutProjectNoUI

*No description yet.*

```csharp
void CheckoutProjectNoUI(IVcsDesignVault argDesignVault, string argLocalPath, string argVCSPath, string argRelPath, int argRevisionID);
void CheckoutProjectNoUI(object argDesignVault, string argLocalPath, string argVCSPath, string argRelPath, int argRevisionID);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argDesignVault` | [IVcsDesignVault](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IVcsDesignVault.md) | value |
| `argLocalPath` | `string` | value |
| `argVCSPath` | `string` | value |
| `argRelPath` | `string` | value |
| `argRevisionID` | `int` | value |

**Returns:** nothing (`void`)

The first overload is an extension method of `IVcsBasedProjectCommandsHelper` (`using DXP;`) with typed parameters; the second is declared by the interface.

### CommitProject

*No description yet.*

```csharp
void CommitProject(IVcsProject argVCSProject, string argProject);
void CommitProject(object argVCSProject, string argProject);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argVCSProject` | [IVcsProject](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IVcsProject.md) | value |
| `argProject` | `string` | value |

**Returns:** nothing (`void`)

The first overload is an extension method of `IVcsBasedProjectCommandsHelper` (`using DXP;`) with typed parameters; the second is declared by the interface.

### GetDesignVaultByGUID

*No description yet.*

```csharp
IVcsDesignVault GetDesignVaultByGUID(string argRepositoryGUID);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argRepositoryGUID` | `string` | value |

**Returns:** [IVcsDesignVault](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IVcsDesignVault.md)

Extension method of `IVcsBasedProjectCommandsHelper` (`using DXP;`).

### GetDesignVaultByPath

*No description yet.*

```csharp
IVcsDesignVault GetDesignVaultByPath(string argRepositoryPath);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argRepositoryPath` | `string` | value |

**Returns:** [IVcsDesignVault](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IVcsDesignVault.md)

Extension method of `IVcsBasedProjectCommandsHelper` (`using DXP;`).

### GetVcsProvider

*No description yet.*

```csharp
IVcsProvider GetVcsProvider(int argIndex, out bool argEnabled);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argIndex` | `int` | value |
| `argEnabled` | `bool` | out |

**Returns:** [IVcsProvider](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IVcsProvider.md)

Extension method of `IVcsBasedProjectCommandsHelper` (`using DXP;`).

### GetVcsProvidersCount

*No description yet.*

```csharp
int GetVcsProvidersCount();
```

**Returns:** `int`

### SelectRepositoryPath

*No description yet.*

```csharp
bool SelectRepositoryPath(IVcsDesignVault argDesignVault, ref string argProjectVCSPath);
bool SelectRepositoryPath(object argDesignVault, ref string argProjectVCSPath);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argDesignVault` | [IVcsDesignVault](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IVcsDesignVault.md) | value |
| `argProjectVCSPath` | `string` | ref |

**Returns:** `bool`

The first overload is an extension method of `IVcsBasedProjectCommandsHelper` (`using DXP;`) with typed parameters; the second is declared by the interface.
