> For the complete documentation index, see [llms.txt](https://docs.bdb.ai/data-pipeline-2/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.bdb.ai/data-pipeline-2/getting-started/pipeline-workflow-editor/pipeline-toolbar/push-pipeline-to-vcs-git.md).

# Push Pipeline (to VCS/GIT)

The Version Control feature has been provided for the user to maintain a version of the pipeline while the same pipeline undergoes further development and different enhancements.

*The **Push to VCS** and **Pull Pipeline*** ***from GIT** features are present on the* [***List Pipeline*** ](https://docs.bdb.ai/7.6/data-pipeline/getting-started/homepage/list-pipeline)*and* [***Pipeline Editor*** ](https://docs.bdb.ai/7.6/data-pipeline/getting-started/pipeline-workflow-editor)*pages.*

## Pushing a Pipeline into VCS <a href="#pushing-a-pipeline-into-vcs" id="pushing-a-pipeline-into-vcs"></a>

* Navigate to the ***Pipeline Editor*** page for a Pipeline.
* Click the ***Push Pipeline*** icon for the selected data pipeline.

<figure><img src="https://content.gitbook.com/content/q2i9CKCFbySxr6jRoJfA/blobs/iU7jljqZuQNaUcJSjQw2/image.png" alt=""><figcaption></figcaption></figure>

* The ***Push into Version Controlling System*** dialog box appears.
* Provide a ***Commit Message*** (required) for the data pipeline version.
* Select a ***Push Type*** out of the below-given choices to push the pipeline:
  1. 1.***Version Control:*** For versioning of the pipeline in the same environment.
  2. 2.***GIT Export*** (Migration): This is for pipeline migration. The pushed pipeline can be migrated to the destination environment from the migration window in Admin Module.
* Click the ***Ok*** option.

&#x20;        ​​![](https://content.gitbook.com/content/q2i9CKCFbySxr6jRoJfA/blobs/Ag44V6YZDS3Y666fLQoS/image.png)

* A notification message appears to confirm the completion of the action.

<figure><img src="https://content.gitbook.com/content/q2i9CKCFbySxr6jRoJfA/blobs/CiehC5uit7gzgiW1CsPb/image.png" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
*Check out the below-given illustrations on how to attempt **Version Control** and **Pipeline Migration**.*
{% endhint %}

{% hint style="info" %}
*<mark style="color:green;">Please Note:</mark>*

* *The* *pipeline pushed to the VCS using the Version Control option, can be pulled directly from the **Pull Pipeline from GIT***![](https://859511478-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGDmsjfjJBNqow7Fo97cO%2Fuploads%2FYfm0P0Q254pAz6i7ktXy%2Fimage.png?alt=media\&token=9a4ee1ce-da05-4a74-b50a-a560b606eb7d)*icon.*
* *The user also gets an option to **Push the pipeline to GIT**. **This action will be considered as Pipeline Migration.***
  {% endhint %}

### Pulling a Pipeline  <a href="#pulling-a-pipeline-from-git" id="pulling-a-pipeline-from-git"></a>

This feature is for pulling the previously moved versions of a pipeline that are committed by the user. This can help a user significantly to recover the lost pipelines or avoid unwanted modifications made to the pipeline.

{% hint style="success" %}
*Check out the walk-through on how to pull a pipeline version from the VCS.*
{% endhint %}

* Navigate to the ***Pipeline Editor*** page.
* Select a data pipeline from the displayed list.
* Click the ***Pull from GIT*** icon for the selected data pipeline.
* The ***Pull from GIT*** dialog box appears.
* Select the data pipeline version by marking the given checkbox.
* Click the ***Ok*** option.

&#x20;    ![](https://859511478-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGDmsjfjJBNqow7Fo97cO%2Fuploads%2FrhzBKNZ9dhtVA1Nnz5Ym%2Fimage.png?alt=media\&token=9efd37a1-af16-493d-a5de-4093bc7b7287)​

* A confirmation message appears to assure the users that the concerned pipeline workflow has been imported.

<figure><img src="https://859511478-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGDmsjfjJBNqow7Fo97cO%2Fuploads%2FLle0e6BcobDV8WVDdYhQ%2Fimage.png?alt=media&#x26;token=bed9a058-f6bf-4dac-a0c8-3ca57fa53532" alt=""><figcaption></figcaption></figure>

* Another confirmation message appears to assure the user that the concerned pipeline workflow has been pulled.

<figure><img src="https://859511478-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGDmsjfjJBNqow7Fo97cO%2Fuploads%2FGRTqMHAtADRdAw3wJzHV%2Fimage.png?alt=media&#x26;token=3d6ceabe-672f-4ca1-a9e4-3af1b97bcfac" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
*<mark style="color:green;">Please Note:</mark>*

* *The pipeline that you pull will be changed to the selected version. Please make sure to manage the versions of the pipeline properly.*
* *Refer **Migrating Pipeline** described as a part of the* [***GIT Migration***](https://docs.bdb.ai/7.6/core-platform/platform-administration/admin-panel-options/git-migration) *(under the Administration section) on how to pull an exported/migrated Pipeline version from the GIT.*
  {% endhint %}

​
