Important: This documentation is about an older version. It's relevant only to the release noted, many of the features and functions have been updated or replaced. Please view the current version.
Usage and performance limitations
Caution
Git Sync is now GA for Grafana Cloud, OSS and Enterprise.
Contact Grafana for support or to report any issues you encounter and help us improve this feature.
Performance considerations
When Git Sync is enabled, the database load might increase, especially if your Grafana instance has many folders and nested folders. Evaluate the performance impact, if any, in a non-production environment.
Usage tiers
The following Git Sync per-tier limits apply:
Compatible Git providers
Git Sync is available for any Git provider through a Pure Git repository type, and has specific enhanced integrations for GitHub, GitLab and Bitbucket.
Note that Pure Git, GitLab and Bitbucket are supported in Grafana v12.4.x only. Refer to Enable Git providers to set them up.
The Pure Git repository type
The Pure Git repository type uses the Smart HTTP protocol v2 (Git over HTTPS), with no provider-specific logic. Pure Git delivers the core Git Sync workflow: your repository is the source of truth, you may edit dashboards in the UI, and Grafana stays in sync.
Note
Pure Git only supports Smart HTTP protocol v2. Earlier protocol versions (v1, v0) and SSH transport are not supported. Make sure your Git server supports protocol v2 over HTTPS.
However, Pure Git doesn’t include any features that require provider APIs, such as webhook-driven instant sync, automated PR comments, or deep links to source files.
Enhanced integrations: GitHub, GitHub Enterprise, GitLab, Bitbucket
If your Git provider is GitHub, GitLab, or Bitbucket, use the enhanced integration. Enhanced integrations understand the platform you’re using, allowing workflows that feel native: automated pull request comments with dashboard previews, instant webhook-based sync, or direct navigation from Grafana to source files in your provider’s UI.
The GitHub enhanced integration is the most feature-complete experience today. It enables richer pull request workflows, deeper linking between Grafana and GitHub, and tighter integration into review processes. It is available in Grafana OSS, Enterprise, and Cloud.
Note
GitHub Enterprise Server is currently only supported through the Pure Git repository type. A dedicated enhanced integration for GitHub Enterprise Server is planned for upcoming releases.
The GitLab and Bitbucket integrations have limited functionality for the moment, and are only available in Grafana Enterprise and Grafana Cloud. Expect continued improvements around pull request workflows, linking, and sync behavior in upcoming releases.
Resource support and compatibility
Git Sync only supports dashboards and folders. Alerts, data sources, panels and other resources are not supported yet.
If you’re a Grafana Cloud user, you can check the Grafana roadmap portal to learn about future improvements.
Resource compatibility
If you’re using Git Sync in Grafana OSS or Grafana Enterprise, some supported resources might be in an incompatible data format. If this happens, syncing will be blocked. Compatibility issues will be fixed with an upcoming migration tool.
A resource can be:
Known limitations
Migration to Git Sync
Full-instance sync is experimental.
When migrating to resources to Git Sync, you can still create, edit or delete resources, but changes may not be exported. The duration of this process depends on the number of resources involved.
When migrating existing dashboards, the folder structure will be replicated in the repository. You may need to manually remove or manage original folders after the migration.
Use existing resources
If you want to manage existing resources with Git Sync, you can save them from the UI, save them as JSON files and commit them to the synced repository, or use grafanactl. Refer to
Export non-provisioned resources from Grafana for more details.
Restore resources
Restoring resources from the UI is currently not possible. As an alternative, you can restore dashboards directly in your GitHub repository by raising a PR, and they will be updated in Grafana.


