> For the complete documentation index, see [llms.txt](https://helpcenter.gitprotect.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://helpcenter.gitprotect.io/changelog/2024/gitprotect-1.8.5.md).

# GitProtect 1.8.5

### 🆕 NEW FEATURES

#### <mark style="background-color:blue;">Azure DevOps support</mark>

With the launch of version 1.8.5, **GitProtect** now supports backing up **Azure DevOps** data. This makes our solution compatible with all leading **Git** service providers. Similar to **GitHub**, **GitLab**, and **Bitbucket** backups, **GitProtect** allows cross-restores to and from **Azure DevOps**. Users can back up both **Azure DevOps** (SaaS) and **Azure DevOps Server** (on-premise) organizations.

#### <mark style="background-color:blue;">Azure DevOps backup</mark>

After selecting an **Azure DevOps** backup plan, users can back up both projects and repositories. During plan configuration, users can choose one of four resource types to protect:

1. Whole organization (recommended).
2. Projects, with the option to select individual repositories within each project.
3. Repositories.
4. Specific resources based on custom rules, such as:
   * Repository name (slug)
   * Project name (slug)

Users can also define which metadata to include in the backup. The ability to include or exclude individual metadata depends on the selected resource type. The full list of supported metadata is available [here](/backup-and-recovery/devops/azure-devops-and-devops-server/backup/protected-resources.md).

#### <mark style="background-color:blue;">Azure DevOps restore</mark>

Backed-up data can be restored to the same or a different **Azure DevOps** organization. With cross-restore capabilities between various **Git** service providers, **GitProtect** allows **Azure DevOps** data to be restored to **GitHub**, **Bitbucket**, or **GitLab** accounts. This ensures an uninterrupted workflow for **Azure DevOps** operations, even if the **Microsoft** service is unavailable.

Depending on the selected **Git** service provider, the metadata available for restore may vary. When restoring projects, **GitProtect** restores both project metadata (such as work items) and the repositories contained within the project.

During a cross-restore to another **Git** hosting provider, only repositories and their metadata are restored. Since **Azure DevOps** projects have no equivalent in other services, project-level data cannot be cross-restored.

**GitProtect** backup for **Azure DevOps** is licensed based on the number of repositories, sold in packages.

#### <mark style="background-color:blue;">Excluding selected repositories from the backup plan</mark>

Responding to customer needs, version 1.8.5 introduces a new mode for selecting repositories to protect within **GitHub**, **GitLab**, and **Bitbucket** backup plans. When selecting an organization to back up, **users can now exclude specific repositories**. After choosing the exclude option, a repository table appears. By default, all repositories are selected, and users can exclude those they do not want to protect.

A backup plan configured this way will protect all repositories in the organization except the excluded ones. Any repositories added to the organization in the future will also be included automatically.

#### <mark style="background-color:blue;">New GitHub metadata supported</mark>

In **GitProtect** 1.8.5 we added support for commit comments and additional repository settings elements, including **Is template repository** and **Automatically delete head branches**.

***

### 🔨 IMPROVEMENTS

#### <mark style="background-color:blue;">Editable organization name</mark>&#x20;

By default, **GitProtect** uses and displays the original organization name. Starting from version 1.8.5, users can edit this name according to their needs. This change applies to all types of **Git** organizations: **GitHub**, **GitLab**, **Bitbucket**, and **Azure DevOps**.

#### <mark style="background-color:blue;">Unified view of repository names</mark>

Since version 1.8.5, the repository name field displays the actual repository name instead of the slug (path). For users who found the previous behavior useful, a new slug field has been added to the repository table. This field is also supported by the filtering and searching mechanism. To enable it, open the table configuration menu.

#### <mark style="background-color:blue;">Branch protection rules with extended support</mark>

Until now, it was not possible to secure branch protection rules that referenced private **GitHub Apps** when using the **GitHub** authorization method. Version 1.8.5 introduces a mechanism that detects such cases and uses a **personal access token** to secure the problematic settings instead.

#### <mark style="background-color:blue;">Improved task package queuing</mark>

Running conflicting task types (for example, deleting and restoring data from the same datastore) is now reflected as queued tasks in the **In progress** tab. These tasks are always executed in descending order. In the past, some tasks were queued in the background and were not visible to users. This issue has now been resolved.

#### <mark style="background-color:blue;">Webhook URIs validation improved</mark>

Parameters such as single quotes, brackets, exclamation marks, and asterisks are not supported because they cause incorrect validation of the webhook address. Previously, using an exclamation mark did not display the appropriate error message. This has now been fixed.

#### <mark style="background-color:blue;">AWS S3 storage usage data</mark>

Version 1.8.5 introduces improved data processing for calculating used storage space in **AWS S3** and **S3**-compatible datastores.

#### <mark style="background-color:blue;">RAM usage optimization</mark>

In this release, we optimized processes that consumed a large amount of **RAM**.

***

### 🐛 BUGFIXES

#### <mark style="background-color:blue;">Child-issues restore in team-managed projects</mark>

A bug that prevented child issues from being granularly restored in team-managed (next-gen) projects has been fixed.

#### <mark style="background-color:blue;">Incorrectly displayed number of tasks in progress</mark>&#x20;

Previously, when running more than 10 tasks, the panel displayed a maximum value of 10, even if more tasks were active. This issue has been fixed, and the value shown in the menu now reflects the actual number of active tasks in the **Tasks** section.

#### <mark style="background-color:blue;">No task statistics in the calendar of the resource dashboard</mark>

This bug has been fixed. Calendar statistics are now displayed correctly, regardless of the **GitProtect Management Service** operation mode.

***

<p align="center"><a href="https://gitprotect.io/latest-update.html#changelogs">ALL GITPROTECT SOFTWARE RELEASES</a></p>
