> For the complete documentation index, see [llms.txt](https://docs.bdb.ai/administrative-settings-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/administrative-settings-2/admin-panel-options/configurations/version-control/versioning.md).

# Versioning

BDB provides Versioning option as a simplified process to track changes for the various modules to ensure efficient development and enhance collaboration for effective code management.

Version control systems like Git provide a robust set of features to ensure efficient and reliable software development. They enhance collaboration, enable effective code management, and simplify the process of tracking changes, thereby contributing to the overall quality and maintainability of the software.

Version Control feature helps the users to maintain a copy of component versions in the ***Version Control System*** (Gitlab | GitHub repository). The user can also pull a specific version from the Version Control System after some versions are pushed there. The supported modules for the versioning are as follows:

1. Dataset
2. Data as API
3. Data Store
4. Dashboard
5. DS Lab Project
6. Notebook
7. Pipeline script

* Select the ***New Version Control*** option from the ***Configurations*** under the ***Admin*** module.

<figure><img src="https://922696899-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeEuRflC9C5ZF8vRZjMuq%2Fuploads%2FkLGRgH3JXrvicU0tmkb8%2Fimage.png?alt=media&amp;token=5d1c3bd3-a9ae-49c4-80ca-8e384df72115" alt=""><figcaption></figcaption></figure>

* The ***Version Control*** Information form opens.
* Select the ***Version*** option from the first dropdown.
* All supported modules will be listed under the ***Select a Module*** drop-down which are supporting the Version Control functionality. (E.g., Dashboard is selected in the given image).
* Select ***Git*** ***type*** as either ***GitLab*** or ***GitHub***.
* Provide the ***Host*****&#x20;information.**
* Provide the ***Token*** ***Key***.
* Click on the ***Test*** button.
* Select the ***Project***
* Select a ***Branch*** where files need to be stored on the VCS.
* Configure the ***More Information*** fields.
  * Provide the following information:

    * Entity App
    * Work Space Name
    * Entity Extension
    * Entity Type

    <figure><img src="https://922696899-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeEuRflC9C5ZF8vRZjMuq%2Fuploads%2F8AjdnPT88VpyKO6dmtQH%2Fimage.png?alt=media&amp;token=0d284ef0-cfde-4619-9110-d20fcad16edc" alt=""><figcaption></figcaption></figure>
* Click the ***Test*** option.

<figure><img src="https://922696899-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeEuRflC9C5ZF8vRZjMuq%2Fuploads%2Fw2eRkXsChacD6pM4lQEb%2Fimage.png?alt=media&amp;token=5282a407-555c-44e3-b3b9-48f9cffe58bf" alt=""><figcaption></figcaption></figure>

* A notification message appears to inform about the successful authentication.
* The ***Save*** option gets enabled. Click the ***Save*** option.

<figure><img src="https://922696899-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeEuRflC9C5ZF8vRZjMuq%2Fuploads%2FQFzZXa0f9FkxsVBzGqaw%2Fimage.png?alt=media&amp;token=9f45788e-8653-40c2-8e2c-68261d2ca79a" alt=""><figcaption></figcaption></figure>

* A configuration message appears and the configuration for the New Version Control gets saved.

![](https://922696899-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeEuRflC9C5ZF8vRZjMuq%2Fuploads%2FxDlNnG6mLXvp9IdA0vwj%2Fimage.png?alt=media\&token=e0cb112f-c289-4dd5-8631-95ef1f3d4a88)

{% hint style="info" %}
*Please Note:*&#x200B;

* *For each component the user needs to set up the associated module configuration.*
* *The configuration fields may vary based on the selection of the **Select** field and the **Token Type** information.*
  {% endhint %}
