Import repositories
Repositories are where your code is stored. When developers make changes to code in a Harness Code repository, those changes are tracked with version control. Harness Code fosters collaboration and governance with code reviews, approvals, status checks, and more.
You can create repositories directly in Harness Code or import repositories from other Git SCM providers, such as GitHub, GitLab, BitBucket, and more.
Import repositories
-
In the Harness Code module, make sure you are at the scope where you want to import repositories.
You can import repos at the account, organization, or project scope. For example, a repo imported at the account scope is available to the entire account, whereas a repo imported at the project scope is limited to that project.
-
Select Repositories, select the dropdown next to New Repository, and then select Import Repository or Import Repositories.
- Import Repository: Import a single repository.
- Import Repositories: Import all repositories in a GitHub/Gitea/Gogs organization, GitLab group, or Bitbucket project or workspace. Harness won't import repositories with conflicting names.
-
Select the Git Provider, such as GitHub or GitLab.
-
Depending on the provider, provide the administrative entity (Organization, Project, Workspace, or Group) and Host URL (if applicable) associated with your repository.
-
If you are importing a single repository, enter the name of the repository you want to import in Repository.
Harness automatically populates the Name field based on the Repository field.
If you want or need to change the repository name in Harness Code, you can change the Name field.
Repository names in Harness Code can't contain the following strings:
account.
org.
project.
.git -
If the repository or entity is private, select Requires Authorization and provide authorization credentials to access the repository.
Permissions required for tokens depend on the provider, for example:
- To import a Bitbucket Server repository, your BitBucket Server personal access token must have repository
Read
permissions. - To import a GitHub repository, your GitHub classic personal access token must have
repo
andread:org
permissions. - To import a GitLab repository, your GitLab personal access token must have
read_api
andread_repository
scopes. - To import an Azure DevOps repository, your Azure DevOps personal access token must have
Code (read)
scope.
- To import a Bitbucket Server repository, your BitBucket Server personal access token must have repository
-
Select your preference for visibility (Public or Private).
-
Select Import Repository or Import Repositories.
You can observe in-progress imports on the Repositories page.
To cancel an in-progress import, locate the in-progress import on the Repositories page, select More options (⋮), and then select Cancel Import.
Work with repositories
After importing a repository, you can:
- Clone your repository.
- Create branches and tags.
- Commit changes and open pull requests.
- Configure branch rules and access control.
- Use Harness Code repositories in your Harness pipelines.
- Set up triggers to automatically run pipelines based on activity in your Harness Code repositories.
- Configure webhooks to integrate your repositories with third-party applications.