The Bulk Change feature provides an easier way to import or export repository configuration.
The bulk export function allows Jira administrators to create a backup copy of the Git Integration for Jira app repository configuration into a tab-delimited (TSV) file.
For detailed instructions on importing multiple repositories in the Git Integration for Jira app configuration, click on the Detailed instructions label or follow the steps in the next section.
Before adding repositories (new or existing) via Bulk Change, make sure that you have added SSH keys for the respective git hosts in the Git for Jira app SSH Keys configuration page. For example, you have GitHub and GitLab repositories to import, add the private SSH keys to the Git for Jira app SSH Keys for each git host.
If you use HTTP/HTTPS URLs in the origin field, the Git for Jira app will not be
able to import said repositories due to missing credentials. Entering
repository login credentials in the TSV file is not advisable due to a possible
security risk. Therefore, when editing the origin field of the TSV file,
enter value in
since it will use the SSH key(s) from the Git for Jira app configuration instead.
For administrators who have several repositories, the Git Integration for Jira app allows you to import multiple repository configuration using a .tsv file. This will make managing large Git repository lists more efficient.
The Git for Jira app will read the list from the file, detect the existing configured repositories, and automatically update its settings. If an error is found, it will be displayed in the message log on the import screen and in the Status column on the repository configuration list. Make the required changes to correct the errors on the affected rows and redo the upload.
Download the template file or follow the above section if you already have the .tsv file ready for import:
The following screen is displayed:.
Click one of the links under How to use Bulk Change? to download the template file.
Populate/edit the fields by utilizing the following options:
|id||Assign an ID number to a repository. This is required if you
wish to update or edit existing repositories by setting this value to
their equivalent IDs. If this field is left blank, the
repository will be created as new.
When importing to a new server, the "id" field must be blank.
|root||Optional on existing servers. See Repository Root in section,
Adding a Repository via Advanced Setup.
The "root" field may refer to an existing repository on a new server. If "root" doesn't exist, this field must be blank.
|origin||Required. See Repository Origin in section,
Adding a Repository via Advanced Setup.
BigBrassBand recommends to use the
For HTTPS git repositories, obtain the URL from your git host then set your login credentials in the username and password (or pat) field to connect to them.
|displayName||Optional. Define a meaningful name for this repository configuration. If this field is left blank, the default value is obtained from the origin.|
Set to true to enable fetches on git repositories hosted on remote servers.
Set to false to enable fetches on git repositories hosted on the same server as Jira.
See Enable Fetches in section, Adding a Repository via Advanced Setup. The default boolean value for this field is true.
|revisionIndexing||Optional. See Revision Indexing in section, Adding a Repository via Advanced Setup. The default boolean value for this field is true.|
|revisionCacheSize||Optional. See Revision Cache Size in section, Adding a Repository via Advanced Setup. The default value for this field is 10000.|
Set specific branch as the main branch for this repository. The default value is "master".
See Main Branch in section, Adding a Repository via Advanced Setup.
|username, password||Optional. See Use basic http authentication in section, Adding a Repository via Advanced Setup. Leave blank if 2FA is enabled for the git host.|
|pat||Optional. Required, if 2FA is enabled for the git host. This field accepts personal access token from supported git hosts.|
|gitViewerEnabled||Optional. Setting this field to true will enable the Repository Browser feature for the configured repository. The default value for this field is false.|
|projectMapping||These are numeric projects IDs associated with the repository. When you
create a new repository and set the field gitViewerEnabled
to true, at least one project
must be associated with it.
If projects are not associated to the repository, you must leave this field blank and set the gitViewerEnable field to false.
|smartCommitsEnabled||Optional. See the Smart Commits section. If left blank, the default value for this field is true.|
|sendCommitEmails||Optional. Send commit notification emails for this repository. If left blank, the default value for this field is true.|
|maxMinsToCommitEmail||Optional. Set the desired value in minutes, as to when commit notifications will be sent. Commit notifications will be e-mailed if the age of the commit is less than or equal to this value. Default value is 1440 minutes.|
|changesetFormat, fileAddedFormat, fileModifiedFormat, fileDeletedFormat||Optional. See the Web Linking section.|
|disabled||Optional. Add this repository into the Git add-on configuration and set its status to updated (enabled) or disabled. If left blank, the default value for this field is false.|
|hosted||Internal field. Read-only. This field will show whether the repository is hosted on Jira or not.|
|tagsFilter||Optional. Set tagsFilter with a valid Java regular expression or an empty string. The filtered tags are displayed on the Jira Developer Panel. For more information on this topic, see Git Tags.|
|integrationType||Internal field. This field will show whether the repository is a tracked folder, a connected GitLab server or a simple repository.|
|trackedFolderId||Internal field. This field will display the ID of the "parent" repository. It
can be changed in order to convert the repository to a sub-repository.
Use with caution. If the modified sub-repository is not located in the tracked folder, it will be removed by the sequential auto-reindex.
|delete||Optional. Set "delete" on this column/field as a confirmation to the Git for Jira app to automatically remove the selected repository from the plugin configuration. If left blank, no changes will occur.|
|sshKeyId||This is the ID of an associated SSH key.|
|limitGitData||Enables/disables limitation of commits shown in Git Commits issue tab,
Git Commits page and all across the Git Integration for Jira app
by project association. This only applies when project associations
are set (projectMapping).
When limitGitData is set to true for a git repository and there are project associations set (projectMapping) — The git data is not shown from that repository in any project except those from projectMapping.
Unless the issue is from a project association list in projectMapping, some data are not shown such as:
limitGitData defaults to true when setting new project associations.
limitGitData Upgrade and installation defaults:
|requireUserPat||Require users to specify their own PAT for branch and pull/merge request management.|
|sourcesDiffViewEnabled||Jira users that have the "View Development Tools" permissions and correct Jira/Git Integration app project permissions can view the diff by commit and file.|
|apiPath||The integration will use this relative REST API path starting with "/" to retrieve the list of tracked repositories. For more information, see Custom API Path master page at Confluence.|
|apiFilter||JMESPath filter expression will be used to filter API results. See our Integration Guide at Confluence, JMESPath Filter master page at Confluence or contact support for help writing expressions.|
Optional. TFS integrations only. A TFS collection is a group of TFS team projects.
Specify an existing TFS Collection for use with Jira integration.
Optional. AWS integrations only. Specify a region for AWS
For region values, see AWS Regions and Endpoints.
To delete multiple repositories from Git Integration for Jira app repository configuration:
To automate the bulk change process via script, see Bulk Change API .