> 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/2026/gitprotect-2.4.0.md).

# GitProtect 2.4.0

### 🆕 NEW FEATURES

#### <mark style="background-color:blue;">Active Directory integration via LDAP</mark>&#xD;

Added **Active Directory** LDAP integration featuring automated user provisioning upon login, group-to-role mapping, and administrative fallback authentication for high availability.

#### &#xD;<mark style="background-color:blue;">FIPS-compliant encryption support</mark>

Introduced a new FIPS mode for backup plans using AES-CBC encryption. When enabled, the system ensures that encryption is performed exclusively via FIPS-validated modules on supported **Windows** backup agents, providing enhanced security compliance for regulated environments.

#### <mark style="background-color:blue;">German language support</mark>&#xD;

The **GitProtect Management Service** is now available in German. This localization covers all dashboard views, organization settings, and backup plan configurations, delivering a fully native user experience for the DACH region.

#### &#xD;<mark style="background-color:blue;">Azure DevOps test plans backup and recovery</mark>&#xD;

Added support for backup and recovery of **Azure DevOps** test plans and test suites. This includes preservation of test case relationships, configurations, and execution history, ensuring complete protection of the quality assurance lifecycle within **DevOps** projects.

***

### 🔨 IMPROVEMENTS

#### <mark style="background-color:blue;">Remote update installer logs for Windows backup agents</mark>

Implemented detailed installer logging for **Windows**-based backup agent remote updates. Logs are now stored locally on the endpoint alongside standard agent logs, providing enhanced visibility into update failures and significantly simplifying troubleshooting.

#### <mark style="background-color:blue;">Case-insensitive SharePoint site search</mark>

Changed **SharePoint** site and template search functionality to be case-insensitive. Users can now find and select resources for backup using any combination of uppercase and lowercase letters, simplifying the search process.

#### &#xD;<mark style="background-color:blue;">Repository exclusion mechanism</mark>&#xD;

Redesigned the repository exclusion mechanism in backup plans to improve clarity and control. Users can now efficiently manage which repositories are excluded from protection and receive immediate visual feedback on active exclusion rules.

#### &#xD;<mark style="background-color:blue;">Standardized Atlassian terminology localization</mark>&#xD;

Updated localization strings across the **GitProtect Management Service** panel to align with the latest official **Atlassian** terminology. This ensures a consistent user experience for customers operating **GitProtect** alongside **Jira** and **Confluence**, particularly regarding space and work item naming conventions.

#### <mark style="background-color:blue;">Handling negative Azure DevOps timeout values</mark>

Enhanced **Azure DevOps** integration stability by properly handling negative timeout values. Invalid timeout parameters received from the service provider are now ignored rather than causing task failures, ensuring uninterrupted backup processes.

#### &#xD;<mark style="background-color:blue;">Enhanced network resilience for Jira backup and recovery operations</mark>&#xD;

**GitProtect** now automatically retries **Jira** API requests when encountering network-related errors (such as socket exceptions or connection resets). By default, the system performs up to five retry attempts using an exponential backoff strategy (1s, 2s, 4s, 8s, and 16s), which significantly improves the stability of backup and restore operations for large **Jira** instances or unstable network environments.

#### <mark style="background-color:blue;">Jira work item types restoration logs</mark>&#xD;

Enhanced the granularity and accuracy of error logs during the restoration of **Jira** work item types. If specific work item configurations cannot be fully restored due to target environment mismatches, the system now provides explicit, contextual details, allowing administrators to rapidly isolate and resolve data mapping issues.

#### <mark style="background-color:blue;">Performance improvement for Azure DevOps synchronization</mark>&#xD;

**Azure DevOps** synchronization is now significantly faster, especially for environments with access to multiple organizations. This update eliminates past performance degradation, slashing synchronization times from up to 10 minutes down to approximately 10 seconds for standard **Azure DevOps** environments.

***

### 🐛 BUGFIXES

#### <mark style="background-color:blue;">Microsoft 365 shared mailbox identification and licensing</mark>&#xD;

The system now correctly differentiates between standard **Microsoft 365** users and shared mailboxes, ensuring that shared mailboxes are accurately identified and licensed during organization synchronization, eliminating the need to remove and re-add the organization to update mailbox statuses.

#### &#xD;<mark style="background-color:blue;">Storage capacity display on the management system dashboard</mark>

Resolved an issue where storage destinations without a defined capacity limit (unlimited) rendered incorrectly in the **GitProtect Management Service** dashboard. Previously, these were falsely displayed as 100% full with a low space badge; they now correctly display an infinity symbol (∞) and no longer trigger misleading low-space warnings.

#### &#xD;<mark style="background-color:blue;">Onboarding steps in the predefined backup plan modal</mark>&#xD;

The predefined backup plan modal dialog no longer incorrectly displays onboarding steps when adding subsequent organizations. The onboarding progress bar is now strictly reserved for the initial setup, ensuring a cleaner, distraction-free interface for experienced users.

#### &#xD;<mark style="background-color:blue;">Last backup task summary chart scaling</mark>&#xD;

The last backup task summary chart now features an auto-scaling, dynamic Y-axis. Previously constrained to a fixed range of 0–280, the chart now automatically scales based on the highest data point, ensuring that large-scale datasets are never visually clipped and low values remain highly readable.

#### <mark style="background-color:blue;">Local storage folder creation triggered by backup agent assignment</mark>&#xD;

Fixed a bug where assigning a backup agent to a backup plan triggered the automatic creation of folders across all local storage destinations. Directories are now created strictly on-demand when a storage destination is actively utilized by a task, preventing the accumulation of empty folders across the file system.

#### <mark style="background-color:blue;">Git LFS text and HTML file backup</mark>&#xD;

Fixed an issue where **Git** LFS (Large File Storage) objects with .txt and .html extensions were not being correctly secured. The system now properly identifies and backs up these specific file types within the LFS framework, ensuring complete repository data integrity.

#### <mark style="background-color:blue;">GitHub repository synchronization (GitHub App integration)</mark>&#xD;

Resolved an issue with **GitHub App** integration, where repositories were automatically disconnected upon encountering transient authorization errors. The system now safely maintains the repository connection and automatically retries the synchronization, eliminating the need for manual administrative intervention.

#### <mark style="background-color:blue;">Jira custom field value restoration</mark>&#xD;

Fixed an issue where custom field values within **Jira** work items were not correctly restored. All metadata associated with custom fields is now accurately preserved during the restoration process.

#### <mark style="background-color:blue;">Archived Confluence spaces restoration</mark>&#xD;

Resolved an issue where archived **Confluence** spaces were restored as active spaces and missing critical components such as folders, smart links, boards, and databases. Archived status and all associated content types are now correctly preserved during recovery.

#### <mark style="background-color:blue;">Restored Jira space status synchronization</mark>&#xD;

Fixed an issue where **Jira** active spaces which were previously marked as deleted or archived were not restored to an active state, even if they had been reactivated in **Jira** before the last backup. The system now correctly synchronizes and restores active status for all spaces.

#### <mark style="background-color:blue;">Restoration of GitHub repositories with many branches</mark>&#xD;

**GitHub** repository restoration now correctly handles environments with a high volume of branches (exceeding 500). This update resolves a **"Bad request"** error that previously occurred during incremental restoration for complex repository structures, ensuring reliable recovery regardless of branch count or backup type.

#### <mark style="background-color:blue;">Restoration of workflow transition screens in Jira</mark>&#xD;

**Jira** restoration now correctly preserves custom screens associated with workflow transitions. When a space is recovered or migrated to a new instance, transitions configured to show a screen accurately maintain their original screen associations, provided the target screens are part of the space's screen scheme.

#### <mark style="background-color:blue;">Restoration of field mapping rules in Jira workflows</mark>&#xD;

**Jira** restoration now correctly preserves field mapping rules within workflow transitions, including configurations that copy custom field values from parent work items. This fix ensures that restored workflows maintain their original operational logic, enabling seamless creation and recovery of sub-tasks that depend on these transition behaviors.

#### <mark style="background-color:blue;">JQL-based work item exclusion in Jira backup plans</mark>&#xD;

**Jira** backup plans now correctly process JQL exclusion rules based on creation date, modification date, and specific field values. This update ensures work items are accurately filtered according to the defined criteria and resolves an issue where work items with empty field values were unintentionally excluded when using certain JQL operators.

#### &#xD;<mark style="background-color:blue;">Restoration of Confluence draft content status</mark>&#xD;

**Confluence** restoration now correctly preserves statuses assigned to draft pages and blog posts. All draft content in the restored space retains its original workflow status, ensuring consistency between the source and restored environments.

***

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