Import from GitHub
The new option to import data from GitHub lets you migrate data from a GitHub repository including issues, comments, and users.
In essence, an import configuration is a graphic UI representation of an import script. A setup wizard navigates you through the import configuration process, which covers standard issue settings in GitHub. If your repository has a custom set of fields for issues, you can use an option to directly edit a client GitHub import script in YouTrack itself.
Import Details
If the GitHub database contains references to entities that do not already exist in YouTrack, they are created. The YouTrack user account that you use to run the import should have permissions to create all imported entities. We recommend that you use an account with a System Admin role or the Low-level Admin Write permission to run the import.
Here is the list of entities that are imported from GitHub and their mapping to YouTrack entities:
Entity in GitHub | Entity in YouTrack |
---|---|
Repository | Project |
Issues | Issues |
Comments | Comments |
Users | Users |
Custom fields | Custom fields |
Attachments | Attachments |
Markdown files (*.md ) | Knowledge base articles |
HTML files (*.html ) | Knowledge base articles |
reStructuredText files (*.rst ) | Knowledge base articles |
Repository collaborators | Project team members |
Set up an Import from GitHub
Before you add a new import configuration, you need to create a personal access token that will grant access to the target repository in GitHub. Then you can use the token for authorization when setting up the import in YouTrack.
Create an Access Token in GitHub
To set up import of issues from GitHub, you must preliminary create a personal access token for the github account that you use to access issues in GitHub repository.
To create a Personal Access Token in GitHub, please follow the instructions in the GitHub documentation.
We recommend to use the following minimal set of scopes for the token to import GitHub issues depending on the repository type:
repo
:repo:status
public_repo
user
:read:user
user:email
repo
:To import issues from a private repo, you need to enable the complete set or therepo
scopes.user
:read:user
user:email
Configure Import from GitHub in YouTrack
To configure import from GitHub:
From the Administration menu, select .
Click New import to open the setup dialog.
Select GitHub.
Configure the import settings:
Setting Description GitHub repository URL The URL of the target repository. Please note that it is not the clone URL, that is: there should not be .git
suffix.Token The personal access token that you have generated on the GitHub for the user account that you use to access the target issues. If required by your GitHub installation, enable the Use SSL key for client authentication option.
When done, click Next.
Select the target project for the import. For more details about the project mapping configuration, see Project Mapping.
Optionally, enable the Continuous import toggle. When enabled, YouTrack will periodically poll the GitHub repository and import updated and new issues that were created since the last sync.
When done, click Start import.
YouTrack will import found issues, articles, and users into the target YouTrack project.
If the Continuous import option is enabled, YouTrack will periodically check target GitHub repository for updated and new issues.
When you have set up an import, it is shown in the imports list. To view configuration and import details, select an import configuration in the list.
In the details sidebar, YouTrack shows import status and details on the data that was imported. Click the Resume button in the toolbar, to explicitly start polling for changes and importing updates from the target GitHub repository.
You can also download the import log file to study and investigate when needed.
Project Mapping
On the final step of the import setup, you can choose whether to create a new project for the import or import data into an existing project in YouTrack.
To configure project mapping:
Select the target YouTrack project.
YouTrack checks for existing YouTrack projects with corresponding names. If it finds a YouTrack project with the same name as the GitHub repository, YouTrack suggests it as the target project.
If there is no existing YouTrack project with the corresponding name, YouTrack suggests creating a new one.
If you want to change the target project, select another option from the corresponding dropdown on the list.
Click Start import to finalize the import setup.
Edit Import Settings
To edit an existing import configuration:
From the Administration menu, select .
In the list of configured imports, select the one you need to edit.
In the right sidebar, click the Edit in the toolbar.
While in the edit mode, change the import settings, including the connection settings.
When ready, click Resume import.
Your changes will be applied, and YouTrack will poll the target GitHub repository for the updates.
Delete the Import Configuration
To delete an existing import configuration:
From the Administration menu, select .
In the list of configured imports, select the one you need to delete.
Click the trash icon in the main toolbar of the page, or the Delete button in the right details sidebar.
In the shown dialog, confirm the operation by clicking Delete.
The current import settings are removed.
Projects, issues, users, and groups that are already imported remain in YouTrack.