# Keep Multiple Versions of a Project

{% hint style="success" %}
*<mark style="color:green;">Pre-requisite:</mark> Make sure that the Version control settings for the DSL plugin are configured by your administrator before you use this functionality.*
{% endhint %}

{% hint style="success" %}
*Watch the walk-through videos given below to understand the **Push to VCS** and **Pull from*** ***VCS** functionality for a DSL Project.*
{% endhint %}

![Pushing a DSL Project to the VCS](https://972575688-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRYq1HgffNfbnIMWPu1D5%2Fuploads%2FtVMSOenog02iPb2xHLd1%2Fpush_vcs_project.gif?alt=media\&token=45686498-dfff-4897-998e-6186e8fff7e1)

![Pulling a DSL Project from the VCS](https://972575688-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRYq1HgffNfbnIMWPu1D5%2Fuploads%2Fp5UhJiDkzP3u2R3X5fXY%2Fpull_vcs_project.gif?alt=media\&token=6355c490-4b12-4d90-b3e2-bac1ceeece02)

## Pushing a Project to the VCS

* Navigate to the ***Projects*** page of the DS Lab plugin.
* Select an ***activated project*****.**
* Click the ***Push into VCS*** icon for the project.

![Push to VCS option for a Project](https://972575688-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRYq1HgffNfbnIMWPu1D5%2Fuploads%2FdaDV8orBYJpU6sqV3eUO%2Fimage.png?alt=media\&token=d7cd17ae-1904-48b8-b769-0c4157ff3931)

* The ***Push into Version Controlling System*** dialog box appears.
* Provide a ***Commit*** Message.
* Click the ***Push*** option.

![Push into Version Controlling System dialog box](https://972575688-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRYq1HgffNfbnIMWPu1D5%2Fuploads%2FtpLKMdihLoDkKWBqC7EE%2Fimage.png?alt=media\&token=e3c54b41-f589-4eed-ad98-ce8d39475453)

* The DSL Project version gets pushed into the Version Controlling System, a notification message appears to inform the same.

![Notification message after a DSL Project gets pushed into VCS](https://972575688-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRYq1HgffNfbnIMWPu1D5%2Fuploads%2FH2dsCyJ9ZTyJWn5PetPx%2Fimage.png?alt=media\&token=ab7f6e36-657c-4516-b19d-bcd8279a13c7)

## Pulling a Project from the VCS

* Navigate to the ***Projects*** page of the DS Lab plugin.
* Select an ***activated project**.*
* Click the ***Pull from VCS*** icon for the project.

![Pull from VCS option for the Project](https://972575688-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRYq1HgffNfbnIMWPu1D5%2Fuploads%2FCvGigBaNkjReMNeh40wZ%2Fimage.png?alt=media\&token=90137e15-c547-4486-8ef6-2aeb4485cbb3)

* The ***Pull from Version Controlling System*** dialog box opens.
* Select the version that you wish to pull by using the checkbox.
* Click the ***Pull*** option.

![Pull from Version Controlling System dialog box](https://972575688-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRYq1HgffNfbnIMWPu1D5%2Fuploads%2FHq5tF4IGcMdz8SUQh0KP%2Fimage.png?alt=media\&token=084b959e-a3c0-4531-b724-f62c368db3e9)

* The pulled version of the selected Project gets updated in the Project list.
* A notification message appears to inform the same.

![Confirmation message after the Project gets pulled from the VCS](https://972575688-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRYq1HgffNfbnIMWPu1D5%2Fuploads%2FBaIC6BsilZj8STitWRK8%2Fimage.png?alt=media\&token=a83b29b7-4e5c-43dc-aef9-468ba52c22e2)

{% hint style="warning" %}
*<mark style="color:orange;">The Push to and Pull from VCS functionalities will not be enabled for a deactivated project.</mark>*&#x20;
{% endhint %}
