Article version: Enterprise Server 2.17
Managing repositories
You can manage the repositories connected to GitHub Insights and the data included in metrics for each repository.
GitHub Insights is available with GitHub One. For more information, see "GitHub's products."
In this article
- About repository management
- About import times
- Viewing and managing repositories
- Managing repository groups for reports
- Creating a repository group
- Adding a repository to a repository group
- Deleting a repository group
- Managing exclusion filters
- Adding a file exclusion rule for all repositories
- Adding a file exclusion rule for a repository
About repository management
For GitHub Insights to include data from a repository in GitHub Enterprise, you must add the organization that owns the repository to GitHub Insights. For more information, see "Managing organizations."
After you add an organization to GitHub Insights, each repository owned by the organization is automatically imported if the repository:
- Has at least one commit
- Is not private
- Is not archived
- Has been pushed to in the last 6 months
Repository data is updated through webhooks and periodic synchronizations. You can manually refresh repository data at any time or cancel a data import that is in progress.
You can create a repository group to see combined data for related repositories. You can filter by repository groups in every metric and report.
You can exclude specific files from GitHub Insights for a specific repository or for all repositories.
About import times
GitHub Insights imports the last three years of data for each repository. Depending on the size and complexity of your repositories, the initial import can some time, during which GitHub Insights data is incomplete. Typically, the initial import will take one or two days. Large and complex initial imports can take up to one week.
Repository Size | Initial import time |
---|---|
< 10,000 commits | < 1 hour |
10,000 to 40,000 commits | < 1 day |
> 40,000 commits | < 5 days |
Once the initial import is complete, subsequent imports from incremental changes should take two minutes or less.
To reduce import times, you can exclude any third party libraries in non-standard folders from GitHub Insights before importing. For more information, see using "Managing exclusion filters."
If you have many large repositories, you can improve initial import times by providing the application server with more cores. Application servers with more cores can perform more parallel import jobs.
Application server cores | Parallel initial import jobs |
---|---|
16 core | 6 jobs |
32 core | 14 jobs |
Importing a large number of pull requests can trigger rate-limiting from GitHub Enterprise. In this case, importing will pause for one hour before resuming. You can temporarily increase the GitHub Enterprise rate limit to improve import times. For more information, see "Configuring rate limits."
Viewing and managing repositories
You can view imported repositories and repositories that are available to import. If an import is in progress, you can see the import's status and a time estimate for the import's completion.
- In GitHub Insights, click Settings.
- Under " Settings", click Repositories.
- Optionally, to add a repository which has not been imported, to the right of the repository's name, click Add.
- Optionally, to manually refresh repository data, to the right of the repository's name, click the refresh icon.
- Optionally, to cancel an import in progress, to the right of the repository's name, click Cancel.
- Optionally, to remove an imported repository, to the right of the repository's name, click Remove.
Managing repository groups for reports
You can create a repository group, add or remove repositories to a group, and delete a repository group.
Creating a repository group
- In GitHub Insights, click Settings.
- Under Settings, click Repo groups.
- In the upper-right corner, click Create Group.
- Under "Group Name", type a name for your group.
- Click Create.
Adding a repository to a repository group
- In GitHub Insights, click Settings.
- Under Settings, click Repo groups.
- To the right of the name of the group, click Edit.
- Under "Repositories", use the drop-down menu and select a repository to add to the group.
- Click Done.
Deleting a repository group
- In GitHub Insights, click Settings.
- Under Settings, click Repo groups.
- To the right of the name of the group, click Edit.
- Click Delete Group.
- Click Confirm.
Managing exclusion filters
You can create a list of file exclusion rules to omit specified files from all GitHub Insights data. File exclusion rules follow the same rules used in .gitignore files. For more information, see "gitignore" in the Git documentation.
Adding a file exclusion rule for all repositories
Changes to global file exclusions only apply to newly imported data and will not retroactively affect existing data. To apply new exclusion rules to existing data, you can remove and re-add repositories to GitHub Insights.
- In GitHub Insights, click Settings.
- Under Settings, click Exclude files.
- Optionally, under "Exclude files", select Include all binaries.
- In the code editor, add a new exclusion rule to the list.
- Click Save Changes.
Adding a file exclusion rule for a repository
- In GitHub Insights, click Settings.
- Under Settings, click Exclude files.
- To the right of "Repositories with File Filters", click Add Filter.
- Use the "Repository" drop-down menu, and select a repository.
- Optionally, to apply exclusion rules to existing data, select Re-import.
- Optionally, select Include all binaries.
- In the code editor, add exclusion rules you want to apply to the repository.
- Click Create Filter.