> For the complete documentation index, see [llms.txt](https://docs.bdb.ai/data-pipeline-5/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-5/getting-started/pipeline-workflow-editor/pipeline-toolbar/push-and-pull-pipeline.md).

# Push & Pull Pipeline

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 &*** ***Pull Pipeline*** ***from GIT** feature 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/6ZP8JhQPMmuTgMyLMcCU/blobs/sSOWKYhtKT7s5BdS3PXq/image.png" alt=""><figcaption><p>Pushing a Pipeline</p></figcaption></figure>

* The ***Push/Pull*** dialog box appears.

<figure><img src="https://content.gitbook.com/content/6ZP8JhQPMmuTgMyLMcCU/blobs/q5CJyJivbgVjnSZKsH8b/image.png" alt=""><figcaption></figcaption></figure>

* 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 ***Save*** option.

<figure><img src="https://content.gitbook.com/content/6ZP8JhQPMmuTgMyLMcCU/blobs/iN7l2Rh4cPtZsrDQmqzY/image.png" alt=""><figcaption><p><em><strong>Pushing a Pipeline</strong></em></p></figcaption></figure>

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

<figure><img src="https://content.gitbook.com/content/6ZP8JhQPMmuTgMyLMcCU/blobs/8exrsflILVyGX32XHpy1/image.png" alt=""><figcaption></figcaption></figure>

{% 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.

* Navigate to the ***Pipeline Editor*** page.
* Select a data pipeline from the displayed list.
* Click the ***Push & Pipeline*** icon for the selected data pipeline.
* Select ***Pull From VCS*** option.
* The ***Push/Pull*** dialog box appears.
* Select the data pipeline version by marking the given checkbox.
* Click the ***Save*** 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 %}

​
