Frequently asked Question (FAQ)

If you can't find what you are looking for, head over to the help center

Installation


For GitHub Marketplace Customers

If you purchase a plan through GitHub Marketplace, the installation will start right after you chose a plan. For step by step instruction, see the help center.

For Enterprise Customers

Install BackHub via the GitHub App Directory. For step by step instruction, see the help center.

After the installation, contact us and let us know how many repositories you’d like to back up so we can find the right plan for you and assign it to your account. You can trial free for 14 days.

Backups

To prevent loss of data

There are many reasons for keeping an extra offsite backup of your repositories. The number one cause of data loss is directly from users. Here are a few scenarios that can lead to loss of data in a GitHub repository:
  • A repository has been deleted accidentally from GitHub.
  • The history of a repository was changed with git-reset or git-rebase and therefore has led to loss of data with a forced push.
  • The contents of an issue or milestone etc. has been changed or deleted accidentally.
  • GitHub accidentally loses your data
  • Rogue employee destroys your data
There are many other scenarios that could potentially lead to loss of data. We therefore strongly recommend backing up all your data. With BackHub you can restore your current backup directly back to GitHub or rollback to a previous state of your repository and metadata from any of the backup snapshots up to 30 days back in time.

For compliance

Many of our customers also need backups for compliance. If you are going through a SOC2 audit, for example, you will need a backup of your cloud data. Read more in our help center.

Outsourcing backup creation has many benefits.

With BackHub, the process is easy:

  • Fast setup, with a full backup in minutes
  • Integrated authentication to back up private repositories
  • Direct restore to GitHub

There is no need to:

  • Write a backup script
  • Keep up with GitHub API changes
  • Monitor backups, or
  • Document backup and recovery procedures

The backup includes the complete git repository, plus GitHub-related metadata associated with the repository, such as issues, milestones and so on.

We include most data available via the GitHub API associated with the repository. This currently includes:

Code
Commits
Branches
Releases
Issues
Pull Requests
Milestones
Wiki

Backups are updated on a daily basis.

The timestamp of the latest complete backup of your GitHub repository displays when you open the panel of a backup.

GitHub repository backup timestamp

We also create daily snapshots of each backup for up to 30 days back in time.

BackHub creates daily snapshots and keeps snapshots of the last 30 days.

Snapshots cannot be kept longer than 30 days because of compliance rules in our GitHub partner agreement.

If you want to keep an older version of your backup we recommend syncing backups to an Amazon S3 bucket. There you can keep snapshots indefinitely.

You can download or restore from any of the snapshots.

Note: Once a backup loses connection to its original repository (e.g., when the repository is deleted or the access token revoked), snapshots age out. After 30 days all snapshots will contain the same data.

Yes, it’s possible to have BackHub create automatic backups for new repositories in your GitHub account.

BackHub creates backups of all repositories it gets access to.

A backup for new repositories is automatically created when you set access to “All repositories”. This action applies to all current and future repositories.

Back up all current and future GitHub repositories

If you have set access to “Only select repositories” you need to manually add the repository name to create a backup for it.

Back up only select GitHub repositories

To add a repository for backup creation, or change the overall setting, open the user menu on the top right of the BackHub UI and choose “configure access” or “manage settings” for your BackHub installations directly from your GitHub account.

By default, BackHub creates backups of all repositories it gets access to.

If you want to back up only select repositories, you can simply limit access to those repositories during installation or later in the app settings.

In the installation dialog, you choose whether to give access to all repositories, or to only select repositories. Choose “select repositories” and enter the names of the repositories to back up.

Backup only select repositories

Read more in our help center.

Yes, you can use BackHub to archive your GitHub repositories.

Once a backup is complete, you can delete the original repository in GitHub. Since the upstream for creating further backups from the original repository will no longer be available, the backup is archived automatically and listed in a separate section at the bottom of the page.

You can restore the repository back to GitHub from an archived backup anytime.

Archived GitHub repository backup

Note: Not all data can be restored to GitHub directly. The data might come in a different format. Read more here.

Restore

Restore is done with the BackHub Restore App and takes just a few clicks.

The restore app creates a new, empty repository in your GitHub account and transfers the complete repository, including Git history and branches. Metadata that can be restored (e.g., issues and milestones) is automatically created via the API.

For step by step instruction, see the help center.

If GitHub is not available, the only way to access your data is by cloning from BackHub servers or through your Amazon S3 Bucket if you have it connected. We offer a disaster recovery service for enterprise customers.

Our service works with GitHub OAuth and is dependent on the GitHub API. You can check the GitHub API status here.

If GitHub is not available, you cannot login to the BackHub user interface. However, if you have a ssh key added to your GitHub account and have turned on the “Clone From Backhub” feature in your account settings, you can clone your repositories directly from BackHub servers. Another way to access your backups if GitHub is not available is to sync them to an Amazon S3 Bucket.

If you have an enterprise plan with enterprise SLA, you can also contact us to perform a disaster recovery of your data.

BackHub lets you restore everything that is included in the backup.

However, due to limitations of the GitHub API, some data either cannot be restored directly or else it comes in a different format for practical reasons:

  • Wikis cannot be restored directly back to GitHub. See these instructions if you want to restore a wiki.
  • Pull requests can only be restored as issues.
  • When restoring, all issues are filed by the user and have the current date stamp. The original author and issue date are included as text in the issue description.
  • We do not link @mentions in issues or comments. This prevents flooding the participating users with notification emails.
  • We do not assign issues when restoring in order to avoid email notifications. The information about the original assignee displays in the issue description.

Yes, you can clone any repository backup snapshot available for your backup directly from BackHub servers.

For this feature to work, you must have:

  1. An SSH key stored in your GitHub account
  2. “Clone from BackHub” activated in the user settings of your account (activated by default).

Read more in our help center.

Yes, you can download the GitHub repository backup from any snapshot available for your backup.

Download it directly either from BackHub through the user interface, or by cloning from our servers.

Read more in our help center.

Yes, you can download the metadata of any backup or backup snapshot directly from BackHub.

Read more in our help center.

Cloud Sync

Yes, you can sync backups to your cloud storage.

Currently we only support Amazon S3. Support for other cloud storage providers is in our plans.

No, you don’t need an Amazon S3 account to back up your repositories.

Backup sync to Amazaon S3 is optional. It is an additional copy to the cloud backup available for you at BackHub.

Keeping an additional copy of your backups makes it possible to:

  • easily access or download all repository backups and metadata at once
  • access your backups anytime, even if GitHub or BackHub were to be unavailable
  • extend the backup retention beyond the 30 days covered by backup snapshots
  • further process your data

Security

Yes. Backups are encrypted both in transit and at rest using the AES-256 encryption algorithm.

Read more on our security page.

BackHub runs on Amazon Web Services, and the data is stored in the region EU Frankfurt (eu-central-1).

GitHub runs their own data center so that your backups are stored in a different, independent location. In case one system fails, the other is still available.

Yes, we provide a Data Processing Agreement.

To sign the agreement:

  1. Download and review the Data Processing Agreement.

  2. Fill in the information on Page 1 (controller) and on Page 11 (Persons with instructional authority).

  3. Sign on Page 8.

  4. Send the signed document to support@backhub.co

Organizations

To create backups for your organization, you need to install BackHub on your GitHub organization account.

Follow the steps in the installation guide, making sure to choose your organization as the billing account.

Organization members with the permission level "Owners" can create, access and restore all backups of an organization.

For details see permission levels for organizations on GitHub.

Plans & Pricing

Please contact us for Enterprise Pricing if you want to purchase a larger plan.

Plans with more than 1200 repository backups are not listed in the GitHub marketplace.

Note: We currently support up to 5000 repository backups for enterprises. If you want to backup more than that, or if you have hundreds of repositories across multiple organizations, ask us about a distributed version of BackHub.

Yes, we do offer annual plans.

Your payment schedule is determined by the payment schedule you chose for your GitHub account. You are automatically billed annually for our service when you choose annual billing for your GitHub account. See the GitHub Marketplace Terms of Service for further details.

You can also purcahse an enterprise plan and choose your preferred billing cycle, monthly or annually.

Yes, we offer enterprise plans starting at 240 USD/mo for 300 repository backups on a 1-year contract.

Enterprise plans cover everything that regular plans do. In addition, enterprise plans offer:

  • Premier customer support, including recovery and restore assistance
  • 99.9% availability
  • 24/7 Support with 24 hrs response time
  • Custom contracts (Client DPA, MSA, etc.)
  • Individual security assessment
  • Personal support contact

Read more in the enterprise service level agreement.

Yes, we offer the following Service Level Agreement for customers on an enterprise plan:

Availability

(1) In addition to § 8 IV, the Service Provider shall guarantee 99.9% availability of its services.

(2) Excluded from the aforementioned availability are failures for which the Service Provider is not responsible, as well as necessary maintenance work.

Support

(1) The support hotline is available to customers around the clock for backup and recovery tasks. A response time of 24 hours is guaranteed. A personal support employee is available to the customer.

(2) The response time defines the time between the receipt of a request and the first response to it. This reaction does not necessarily represent the solution or the answer to the question, but can include questions for further analysis. This further analysis can go beyond the agreed reaction time.

Contact options

The Service Provider can be contacted by email: support@backhub.co

Additional agreements

The customer can make individual agreements with the Service Provider regarding security assessments, order processing and general service agreements.

Within the framework of the service level agreement, the compatibility of these additional agreements with the general terms and conditions of the Service Provider is checked and agreed upon if compatibility exists.

The Service Level Agreement is part of our terms of use.