Harness Git Experience Overview

Updated 3 months ago by Michael Cretzman

Currently, this feature is in Beta. Once the feature is released to a general audience, it will be available for Harness Professional, Essentials, Trial, and Community Editions.

Harness Git Experience provides seamless integration between your Harness Projects, Pipelines, and resources and your Git repos. You can work entirely from Git or use a hybrid method of Git and the Harness Manager.

This topic provides a summary of Harness Git Experience.

In this topic:

What is Harness Git Experience?

Harness Git Experience provides seamless integration between Harness and your Git repos.

Here are some of the high-level features:

  • Webhooks for your synced repos are added automatically: this keeps your repos and Harness is sync in realtime.
  • Pipeline changes pushed using your SCM credentials: using your SCM credentials instead of a shared Harness account improves auditing and helps you see who made commits from within Harness. Using your SCM credentials also allows you to leverage Harness RBAC.
  • Git-like UX from within Harness Manager: you can test Pipeline changes on a separate branch and then merge them to the main branch from within Harness. Harness Git Experience provides a full dev experience with repo, branch, and PR support.
  • Flexibility: your Harness Pipelines and their resources (Connectors, Secrets, etc) can exist in multiple, separate repos and folders. At Pipeline execution, Harness pulls them all together to execute your Pipeline as you designed it.

Harness Folders

When you sync Harness with Git you specify the repos and branches to use for your Harness Pipelines and resources. Harness then adds a .harness folder to these locations. These are called Harness Folders.

Harness does not enforce a specific format or structure within the .harness folder. You can use whatever subfolders you want for different files.

Harness Folders can reside anywhere in Git repos and their subdirectories.

Harness scans the .harness folder recursively to find all the config files in it.

You can define multiple repos with multiple Harness Folders per Harness Project.

What Can I Do with Harness Git Experience?

Harness Git Experience helps you do the following:

  • Maintain Harness CI/CD/etc Pipelines alongside the code in your repos.
  • Submit config changes using the Harness Pipeline Studio (GUI and/or YAML) or entirely in Git.
  • Make Harness Pipeline or resource config changes in a branch, test it in isolation (sandbox), and submit changes to master using Harness Manager or your Git platform.
  • Make code and Harness CI/CD/etc Pipeline changes within a single PR.
  • Control who can make changes using Prod and Non-Prod configurations in separate repos.
  • Audit which Git user accounts made config changes.

GitHub-specific Benefits

Harness Git Experience has the following GitHub-specific benefits:

How is Harness NextGen Git Support Different from FirstGen?

If you're a Harness FirstGen user, you're likely familiar with Harness Git Sync. The following table shows the differences between Harness FirstGen Git Sync and NextGen Harness Git Experience:

Feature

FirstGen

NextGen

Bi-direction Git sync

Git branching

X

Primary data source

Mongo

Git

Optional Git sync

Multi-repo support

X

Flexible folders

X

User credentials support

X

Multi-branch support

X

Automatic Webhook integration

X

For a quick summary of the differences between FirstGen and NextGen see Harness FirstGen vs Harness NextGen.

Next Steps


Please Provide Feedback