Connecting with GitHub
If you use GitHub as a project management tool, you can easily integrate it with Everhour and start tracking time for all your GiHub issues. No more tab switching.
In this article
How to setup
Important. To see the embedded timer in your GitHub and track time there, you need to install our browser extension. This is how we embed controls into their interface. The extension must be up-to-date and installed on any computer you use.
- 1
-
You'll be prompted to connect during signup. To do this, you need to hit 'GitHub' button and let Everhour do the rest, step-by-step.
Important. We request access to your GitHub repositories so we can access issues. There is no GitHub API permission allowing "OAuth Apps" to request access ONLY for Issues at this time. We have to request read/write access to your code to interact with Issues. Read more
- 2
-
You can connect GitHub or any other platform at any time from the Integrations page in your account settings.
- 3
-
You need to invite your team to join Everhour. During the registration process, they will need to connect their GitHub accounts and install our browser extension. I.e. only those you invite into Everhour will be able to track time and see time progress. These are not necessarily all Github users. Same way your clients will not see anything in GitHub unless you add them to your Everhour team.
Tip: Click on the extension icon in Chrome, and then on the pin icon next to Everhour to make it visible all the time.
How sync works
When you connect GitHub, Everhour will automatically sync all your projects across all teams and workspaces, except your public organisations. Repositories of such organisations won’t be synchronised by Everhour and time cannot be tracked for these projects. It's currently not possible to make a granular sync, deciding what projects you wish to connect and what not.
You can decide what organisation should grant access to Everhour to be able to track time on this page. We won't sync a repository, when it is a fork from a repository that belongs to another organisation, to which you did not grant access for Everhour.
Sync happens periodically and automatically so all new repositories that you create in GitHub will be added to your Everhour account. Everhour also updates the names of issues or repositories if they were renamed. This way Everhour reports will always show the freshest data.
When you have a personal private repository where you don't track time, or set task estimates, or set billing and budget, such repository won't be visible to other team members including admins.
How to trigger instant sync:
- 1
-
If you just added a new repository in GitHub or renamed the existing one and want to see these changes immediately in Everhour, you need to re-sync projects from the Integrations page manually.
- 2
-
Same with tasks. If you've just renamed an issue, added a new tag or moved the issue into a different section and you want to see these changes instantly, you need to go to the Projects page, select the project(-s) with a change and hit 'Resync Tasks'.
Controls inside GitHub
After successful integration, Everhour supplements GitHub interface with a number of features.
- Task time: total time reported by each employee and estimate into the issue. Click on the badge to make changes;
- Buttons: you can track time using the timer or log time manually.
Making reports with GitHub data
There are a number of columns that shows specific data coming from GitHub. Open a report builder and select any of columns to display the data in your report.
- Project and task accordingly show the names of GitHub repositories and issues;
- Section shows the name of the GitHub milestone;
- Task number and Task status shows the task ID and whether it is open/closed;
- Tag shows the name of GitHub tags.
Permissions
In general, we rely on GitHub's permissions a lot. If in GitHub the user has access to the task project, therefore, he can track the time in it. If you take away someone's access to the repository in GitHub, this user will no longer be able to track time into its issues. Past history will remain in the reports of the team, but the user will lose it.
Configuring budgets, marking a task as non-billable, assigning a client to the project can only be done by admins. The admin in Everhour can see projects and tasks of all members (except the public repositories). It does not matter if an admin has access to the same repository in GitHub. This is due to the fact that any admin should see the same totals in time reports and be able to configure projects billing and budgeting.
Regular users cannot track time into the archived project. Admins can do that, but only manually (timer is disabled). Thus, we indicate that the project is archived and make sure that no one tracks time accidentally.
Troubleshooting
It may happen that GitHub changes something in their code and these changes break some part of our functionality. We always do our best to apply the necessary corrections ASAP, but this requires updating our browser extension (this is how we embed into GitHub interface and there is no other mechanism). If you encounter an issue that something has stopped working, please make sure that you have the latest version of the extension installed. Read this article for more details.
If suddenly the review of our extension is delayed by Google team, as a temporarily workaround, you can install the dev version of our extension. Read this article for more details.
Disconnecting
To disable integration, go to 'Integrations' page in Everhour account.
This option affects only your account, other team members are still able to track time. If the whole team disconnects GitHub, no one can track new time in GitHub, time history remains only in admin reports.
To remove all Everhour controls from GitHub interface, delete our browser extension.