# Version Control Repositories Summary

{% hint style="info" %}
**Important Note**: This article is for the **Org Administrator** in particular. The actions discussed in the article will not be available to general users.
{% endhint %}

### Overview <a href="#overview" id="overview"></a>

The lists of repositories you have added yourself and any other repositories your team members have shared can be seen on the **`VC Repo's`**` ``(`**`Version Control Repository)`** page.

Repositories with **Salesforce DX** enabled will have![](https://1912836914-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9vAxMuDrkUkB4OXlH9CL%2Fuploads%2FrO556K9ZyXMeaPkPiRfb%2Fimage.png?alt=media\&token=9422bcdd-95cb-4b97-b282-79b6a95d9c4e)icon displayed, and nCino objects configured will have![](https://1912836914-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9vAxMuDrkUkB4OXlH9CL%2Fuploads%2FTuN4wkcDZGUtoRsPtJfn%2Fimage.png?alt=media\&token=d1c798e0-5540-4dfd-ba50-ac532475d4fd)icon beside their repository under **`Repositories List`** for easier identification.

<figure><img src="https://1912836914-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9vAxMuDrkUkB4OXlH9CL%2Fuploads%2FPers2JqexQLmhA6D2Dkk%2Fimage.png?alt=media&#x26;token=7b283fe2-9eca-4ff4-b589-bd3f9b162e23" alt="" width="231"><figcaption></figcaption></figure>

<figure><img src="https://1912836914-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9vAxMuDrkUkB4OXlH9CL%2Fuploads%2Flkrd94TmOSg4LAmEIIQl%2Fimage.png?alt=media&#x26;token=bd63e0c5-7805-495f-b77f-120722ee7665" alt="" width="563"><figcaption></figcaption></figure>

For each version control repository registered in ARM, the following information or fields are displayed:

Create a pull request to propose and collaborate on changes to a repository. This is discussed later.&#x20;

| Field Name             | Description                                                                                                                                       |
| ---------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| `Repository Name`      | Name of your  version control repository                                                                                                          |
| `Type`                 | Version control repository type, i.e., GIT, TFS, or SVN.                                                                                          |
| `URL`                  | Repository URL                                                                                                                                    |
| `Created Date`         | Date and time stamp for repository created or modified                                                                                            |
| `Credentials`          | User's credential linked with the version control repository                                                                                      |
| `Test Connection`      | This will allow you to check whether the connection has been authenticated. A success message is displayed after the authentication is completed. |
| `Enable nCino app`     | On selection, the nCino objects will get registered with the current repository.                                                                  |
| `Pull Request Support` | Create a pull request to propose and collaborate on changes to a repository. This is discussed later.                                             |

<figure><img src="https://1912836914-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9vAxMuDrkUkB4OXlH9CL%2Fuploads%2FDBynZVF7iy1hH1dFYqkI%2Fimage.png?alt=media&#x26;token=2cc490c1-5e74-4dd7-aa30-f730be6ceb08" alt=""><figcaption></figcaption></figure>

#### Pull Request Support <a href="#pull-request-support" id="pull-request-support"></a>

Create a pull request to propose and collaborate on changes to a repository. These changes are proposed in a branch, which ensures that the master branch only contains finished and approved work. You can specify which branch you'd like to merge your changes into when you create your pull request.

<figure><img src="https://1912836914-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9vAxMuDrkUkB4OXlH9CL%2Fuploads%2F8rOgnB8MDZdBy0cStoWz%2Fimage.png?alt=media&#x26;token=8e373591-2e9c-4bb2-a0b6-b8958fe0fe04" alt=""><figcaption></figcaption></figure>

Pull requests can only be opened between two branches that are different. More detailed instructions are available in a separate article; please refer [HERE](https://knowledgebase.autorabit.com/~/revisions/Sxgg9jAjbkdELNi4g1n4/product-guides/arm/arm-features/version-control/external-pull-request).

#### Branches/Tags <a href="#branchestags" id="branchestags"></a>

The Git tags created or branches registered for the version control repository will get displayed under the **`Branches/Tags`** section. For more information about Git Tags, check out the link [HERE](https://knowledgebase.autorabit.com/~/revisions/Sxgg9jAjbkdELNi4g1n4/product-guides/arm/arm-features/version-control/introduction-to-version-control/broken-reference).

**Additional details under Branch**

**A. Create a Branch**

Create a new branch for the current repository. Newly created branches will get listed under the **`Branches`** tab. ([LEARN MORE](https://knowledgebase.autorabit.com/~/revisions/Sxgg9jAjbkdELNi4g1n4/product-guides/arm/arm-features/version-control/introduction-to-version-control/version-control-branch-workflow))

<figure><img src="https://1912836914-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9vAxMuDrkUkB4OXlH9CL%2Fuploads%2F95Q5QNvANRn6eW3CEbuC%2Fimage.png?alt=media&#x26;token=5ee73e04-ed8f-4bd0-9a37-cf689695adf7" alt=""><figcaption></figcaption></figure>

**B. Register a Branch**

Register an existing branch to the current repository. ([LEARN MORE](https://knowledgebase.autorabit.com/~/revisions/Sxgg9jAjbkdELNi4g1n4/product-guides/arm/arm-features/version-control))

<figure><img src="https://1912836914-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9vAxMuDrkUkB4OXlH9CL%2Fuploads%2FseRF8ehmJl0fHeVA4q3p%2Fimage.png?alt=media&#x26;token=c4bf5630-5be2-4398-a531-e8f7059b54b8" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1912836914-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9vAxMuDrkUkB4OXlH9CL%2Fuploads%2FpyqmOiiUVifTi8XNxK0U%2Fimage.png?alt=media&#x26;token=d2876199-e10c-4b0e-9ccd-7a5eea898e45" alt=""><figcaption></figcaption></figure>

**C. Unregister a Branch**

Select a branch or branches to unregister them from your version control system. Upon confirmation, the branch(es) gets permanently deleted from your version control system. The entire data will get erased.

<figure><img src="https://1912836914-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9vAxMuDrkUkB4OXlH9CL%2Fuploads%2FemUeyQuGhIySTw2x0lue%2Fimage.png?alt=media&#x26;token=38f7abc5-151f-4759-a09d-cc2c8ac0b0e2" alt=""><figcaption></figcaption></figure>

**D. Sync Branches**

The **`Sync Branches`** option will allow you to view the branches that are no longer available in your version control repositories but present in ARM; therefore, you can delete them from the ARM application.

**E. Branch Details:**

For each branch, view the following details:

<figure><img src="https://1912836914-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9vAxMuDrkUkB4OXlH9CL%2Fuploads%2FzZns7z7e2xvH4BuqX69e%2Fimage.png?alt=media&#x26;token=ed20ad73-043a-47a8-9c32-d8c5079a2443" alt=""><figcaption></figcaption></figure>

1. **`Branch Name:`** Name of the branch assigned.
2. **`Branch Settings:`**&#x54;his option allows you to update your branch configuration, which means:

   * you can add your branch to one of the standard branch types *(development, integration, quality assurance, production, etc.)*
   * configure your parent branch
   * update the metadata folder path and/or,
   * update the branch's last commit date.

   **Pieces of information related to 'Metadata Folder Path'**

   * When the user changes the **`Metadata Folder Path`**, ARM updates the **project-def.json** file at the time of the initial commit. The commits will now occur in the newly created *.src* folder once the src metadata folder location has been updated. In an instance where the user has many commits on the newly created src folder and then reverts the src folder to default, all of the components in the src folder will now be included in the **package.xml** as well.

   <figure><img src="https://1912836914-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9vAxMuDrkUkB4OXlH9CL%2Fuploads%2FLpSA1u89Uo3cOu5qKksG%2Fimage.png?alt=media&#x26;token=b9886f17-f1d3-408e-b987-60a2f3b5cf92" alt="" width="511"><figcaption></figcaption></figure>
3. **`Smart Commits-Sync:`** Use this toggle button to start/stop syncing external [Smart Commits](https://knowledgebase.autorabit.com/~/revisions/Sxgg9jAjbkdELNi4g1n4/product-guides/arm/arm-administration/alm-management). If you try to sync external commits to a branch that has not been mapped, you will see a notification popup. You must map the required branch under **`Admin > ALM Mgmt > Repository Mappings`**, then you can proceed to sync the external smart commits. For more information on mapping a branch, refer [HERE](https://knowledgebase.autorabit.com/~/revisions/Sxgg9jAjbkdELNi4g1n4/product-guides/arm/arm-administration/alm-management).

<figure><img src="https://1912836914-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9vAxMuDrkUkB4OXlH9CL%2Fuploads%2Fx5TsRax0vmBnEOen3IrP%2Fimage.png?alt=media&#x26;token=81318fe0-1deb-4971-8ffc-15648455f22e" alt=""><figcaption></figcaption></figure>

4. **`Status:`** View the branch status along with the branch log report.
5. **`Info:`** Hover your mouse over the icon to view the branch details, such as the branch created date, parent branch, and author details.

<figure><img src="https://1912836914-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9vAxMuDrkUkB4OXlH9CL%2Fuploads%2FCKMptgaHfsBE40STLi9Q%2Fimage.png?alt=media&#x26;token=161746e7-af87-406b-b14c-72864da39b75" alt=""><figcaption></figcaption></figure>

6. **`Clear AutorabitExtId:`** Deletes the **`AutorabitExtId__c`** field from your branch.
7. **`Migrate:`** Migrates custom object field **`Picklist`** to **`Value Set`** in your branch.

### FAQ

### Is it feasible to update the repository URL without having to re-register the repository in ARM? <a href="#is-it-feasible-to-update-the-repository-url-without-having-to-reregister-the-repository-in-arm" id="is-it-feasible-to-update-the-repository-url-without-having-to-reregister-the-repository-in-arm"></a>

The repository URL cannot be changed; you must use the new repository URL and re-register it with ARM. To register a new repository, click this [link](https://knowledgebase.autorabit.com/~/revisions/Sxgg9jAjbkdELNi4g1n4/product-guides/arm/arm-features/version-control/introduction-to-version-control/version-control-repositories-summary).

### Why am I getting an error while registering the GitHub repository with SSH? <a href="#why-am-i-getting-an-error-while-trying-to-register-github-repository-with-ssh" id="why-am-i-getting-an-error-while-trying-to-register-github-repository-with-ssh"></a>

**GitHub** no longer allows new **RSA** keys with **SHA-1** signatures. Execute the `ssh-keygen -t ed25519 -C “sampath.c@autorabit.com”` command in the terminal to create a new key, or contact **<support@autorabit.com>** for further assistance. Please note that you must create the new key in **Linux** or **Unix**, not in Windows. For more information, visit <https://github.blog/2021-09-01-improving-git-protocol-security-github/>
