Frequently asked Question (FAQ)

Installation

1. Choose a plan on GitHub Marketplace

In order to install BackHub, please head over to GitHub Marketplace, click on “Set up a plan” and choose a plan that suits your needs.

Set up a plan on GitHub Marketplace

You can try all our plans free for 14 days.

Choose a plan

Choose a plan that suits your needs. BackHub creates backups of all repositories in your account by default but you can also choose to backup only select repositories.

Next, you will see a summary of your order. Under “Billing information” you can choose the billing account for which you want to install BackHub and start creating backups. If everything is correct, click on “Complete order and begin installation”.

Choose account

2. Install BackHub

In the next step, you will be able to manage repository access. BackHub creates backups for all repositories you give access to. That means if you grant access to “All repositories” backups for all current and future repositories will be created automatically. In case you want to backup only select repositories, please choose “Only select repositories” and type in the names of the repositories you want to backup.

Set access to GitHub repositories

Secondly, you will see the permissions BackHub is asking for. In order to create backups, read access to code is necessary. For backing up the metadata and to manage access to backups read access to administration, issues, members, metadata, pull requests, and repository projects are needed.

Click on “Install” to start installation. GitHub might ask you for your password in order to confirm the installation.

Start installation

3. Sign in to BackHub

After the installation of BackHub for your account has been completed, you will be asked to verify your identity on GitHub with your personal GitHub user. This is to be able to login on backhub.co and manage your installations.

Click on “Authorize backhub” and you will be redirected to backhub.co.

Authorize BackHub and verify your identity on GitHub

4. Create Backups

On backhub.co you will see an initial dialog with the number of repositories you gave access to and the account for which you have installed BackHub.

In order to start creating backups for your GitHub repositories, click on “Create backups”.

Create backups

Next, you will see a list of all backups with either a grey and the status “… pending” or already “… in progress” with a yellow border. Depending on the size and amount of your repositories, creating the backups can take between a couple of minutes or up to a few hours.

Pending backups

Once the backups is successfully created, it will have a green border and a timestamp when the backup was created. Come back later to this page if you want to check the status of your backups.

Example of a successful GitHub repository backup

Backups

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

BackHub creates backups of all repositories it gets access to. If you have set up access to “All repositories” this applies to all current and future repositories. Hence, a backup for new repositories is created automatically.

Backup all current and future GitHub repositories

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

Backup only select GitHub repositories

If you want to add a repository for backup creation or change the overall setting, please 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.

Yes, it’s possible to only backup select repositories.

BackHub creates backups of all repositories it gets access to by default. If you want to backup only select repositories you can simply limit access to those repositories you want to backup.

In the installation dialog you are being asked to choose whether you want to give access to all or only select repositories. Please choose “select repositories” and type in the names of the repositories you want to backup.

Backup only select repositories

If you have already installed BackHub, you can edit the permissions by managing your installations on GitHub.

Once the access to an already existing backup has been revoked, it’s being archived automatically and can then be deleted manually.

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 being archived automatically and listed in a separate section in the bottom of the page. You can restore the repository back to GitHub from an archived backup anytime.

Archived GitHub repository backup

Please note that not all data can be restored to GitHub directly and might come in a different format. You can learn more about what you can restore here.

A backup can only be deleted when it has been archived. A backup is being archived automatically when BackHub can’t access the original repository at GitHub any longer. That happens either when access is being revoked for the installation, for this specific repository or if the original repository has been deleted on GitHub. Archived backups are listed in a separate section in the bottom of the page and are indicated by a dashed outline.

Archived GitHub repository backup with delete button

You will find the delete button in the footer section of the backup panel. When you delete a backups it’s being removed permanently and can’t be restored any longer.

BackHub is creating daily snapshots and keeps snapshots of the last 30 days.

We can’t keep snapshots older than that for compliance with our GitHub partner agreement. If you want to keep an older version of your backup we recommend downloading the data from BackHub and keeping an offline copy of it.

You can download or restore from any of the snapshots.

Please note that once a backup looses connection to it’s original repository (e.g. when the repository is being deleted or the access token revoked), snapshots age out and after 30 days all snapshots will contain the same data.

Backups are being updated on a daily basis.

You can find the timestamp of the latest complete backup of your GitHub repository when you open the panel of a backup.

GitHub repository backup timestamp

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

When a backup fails, automatic retries are made until the backup is successful. If the backup continues to fail, our technical support is being notified. A failing backup is indicated in the user interface with an error message in the backup panel and a red border.

GitHub repository backup error

When you delete a repository at GitHub, the backup of that repository can't be updated any longer and is therefore being archived.

Archived backups are listed in a separate section in the bottom of the page and are indicated by a dashed outline.

Archived GitHub repository backup

The backup includes the complete git repository plus GitHub related metadata associated with the repository like issues, milestones and more.

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

Code
Commits
Branches
Releases
Issues
Pull Requests
Milestones
Wiki
When a backup is listed in "inactive" and is marked with a yellow border, this can have two reasons: Inactive GitHub repository backup

a) A backup for this repository hasn't been created yet.

This is the case when you have set the installation to get access to select repositories only and you add new repositories later to the list of repositories the installation gets access to. BackHub checks each installation for new repositories every 24hrs. That means backups for the new repositories will be created automatically during a 24hr cycle and once they are created they are being listed in the "active" section and have a green border.

b) The backup routine for this repository has been stopped.

This happens when you have reached quota of your current plan and new repositories have been added to your GitHub account for this installation or have been added to the list of repositories this installation has access to. To solve this issue please purchase a larger plan or limit access to select repositories for this installation for the maximum amount of your current plan.
There are many reasons why you might want to consider keeping an extra off site backup of your repositories. The number one cause of data loss comes directly from users. Here are a few scenarios that could lead to loss of data in a GitHub repository:
  • A repository has been deleted accidentally from GitHub.
  • The history of a repository can be changed with git-reset or git-rebase and therefore has led to loss of data with a forced push.
  • The contents of an issue, milestones etc. has been changed or deleted accidentally. Since there is no versioning for metadata, without a backup it is gone forever.
There are many more other scenarios that could potentially lead to loss of data and it is therefore recommended to backup 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.
Backups are being archived automatically when the connection to it's original repository is lost. This happens when:
  • when the repository has been deleted at GitHub
  • when access to this particular repository has been removed by changing permissions
Archived backups are listed in a separate section on the page and are indicated with a dashed outline. Archived GitHub repository backup

Security

Backups are encrypted in transit and at rest using AES-256 encryption algorythm.

Yes, we provide a Data Processing Agreement. If you want to sign the agreement, please follow these steps:

  1. Download and review the Data Processing Agreement.
  2. Fill in the information on Page 1 (controller) and Page 11 (Persons with instructional authority) and sign on Page 8.
  3. Send the signed document to support@backhub.co
BackHub runs on Amazon Web Services and the data is being stored in the region EU Frankfurt (eu-central-1). GitHub runs their own data center so your backups are stored in a different, independent location. In case one system fails, the other is still available.

Organizations

In order to create backups for your organization, you need to install BackHub on your GitHub organization account. Please follow the steps in the installation guide and make 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. You can learn more about permission levels for organizations on GitHub.

Plans & Pricing

Yes, archived backups count against your quota. We recommend downloading the repository and metadata for long term storage of repositories you don’t work on any longer. Please keep in mind though that restoring back to GitHub is only possible for backups inside BackHub.

Payments and billing schedule are governed by the GitHub Marketplace Terms of Service.

Marketplace purchases are billed in advance on a monthly or yearly basis respectively and are non-refundable. There will be no refunds or credits for partial months of service, downgrade refunds, or refunds for months unused; however, the service will remain active for the length of the paid billing period.

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. Please refer to the GitHub Marketplace Terms of Service for further details.

Plans with 600 repository backups or more are currently only available on request. This is because GitHub doesn’t allow for more than 5 plans in parallel on GitHub Marketplace and must therefore be paid outside the marketplace.

1. Send us an email

Please send us an email with your requested plan and the username/organization you want to purchase the plan for. You can also use the support form or the chatbox in the app.

2. Wait for our confirmation

We will manually setup your account for the requested plan, please wait for our confirmation before proceeding.

3. Enter your credit card details

Please head over to app.backhub.co and choose the user/organization in the select box on the top right of the screen. Then enter your credit card details as well as the billing email where you’d like to receive invoices. If your business is registered in the EEA other than Germany, please provide us with your VAT ID.

4. Cancel your GitHub Marketplace plan

To avoid duplicate billing, you need to cancel your plan on GitHub marketplace. Please head over to GitHub Marketplace, click “Edit your plan” and choose the right account.

GitHub Marketplace edit plan

In the “Edit your plan” dialog, you will find a link “Cancel this plan” in the bottom of the box where you can choose a plan.

GitHub Marketplace plan cancellation

Restore

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

Please open the panel of a backup, click “download repository” and choose “current” for the latest backup or any of the snapshots available. The download contains the complete repository including the git history and all it’s branches.

Download GitHub repository backup

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

Please open the panel of a backup, click "download metadata" and choose "current" for the latest backup or any of the snapshots available. The download contains all available metadata in JSON format.

Download GitHub issues and metadata of a repository backup

1. Install BackHub restore app

Before you can restore a backup, the BackHub restore app must be installed.

For restoring a backup, writing permission to your GitHub account is necessary and therefore the BackHub restore app is installed separately so you can remove the app and it’s permissions after the restore has been completed.

Go to the GitHub App directory and start the installation. During the installation process, please allow access to “All repositories”. This is necessary because it’s the only way to get access to a newly created repository instantly.

Allow access to all repositories

2. Initiate restore

In BackHub, search for the repository you’d like to restore. Click on the panel to open the details. In the footer of the panel, choose the snapshot you’d like to restore from, then click “Restore”.

Choose a snapshot of a GitHub repository backup to restore

Head over to your GitHub account and check the restored repository. It may take a couple of minutes up to an hour for the restore to complete, depending on the size of your repository.

Dialog with settings to restore GitHub repository backup

3. Remove restore app

After the restore has been completed, you can remove the BackHub restore app and it’s permission. Head over to the app settings at GitHub and choose the organization from wich you want to remove the app. Removing the restore app increases the security of your account.

You can choose an earlier version of your backup from the popup menu when clicking the restore button. Please follow the instructions on how to restore a repository.

Choose a snapshot of a GitHub repository backup to restore

Our service works with GitHub OAuth and is dependent on the GitHub API. That is why it is not possible at this point to restore or access your backups in case GitHub is not available. You can check the GitHub API status over here.

Because wikis are just Git repositories, you can make changes locally and push them to your repository using a Git workflow.

First, download the wiki of your backup. Please open the panel of a backup, click “download wiki” and choose “current” for the latest backup or any of the snapshots available. The download contains the complete wiki repository.

Download GitHub wiki

Next, clone the empty wiki of the repository you want to restore into, following the instructions on the GitHub documentation.

Clone GitHub wiki locally

Now that you have a local copy of your empty wiki and a local copy from the wiki of your backup, you can simply copy the files from the backup over into the empty wiki and commit them.

Install BackHub restore app

Before you can restore a backup, the BackHub restore app must be installed.

For restoring a backup, writing permission to your GitHub account is necessary and therefore the BackHub restore app is installed separately so you can remove the app and it’s permissions after the restore has been completed.

Go to the GitHub App directory and start the installation. During the installation process, please allow access to “All repositories”. This is necessary because it’s the only way to get access to a newly created repository instantly.

Allow access to all repositories

If you want to learn how to initiate a restore, follow the instructions on this page.

Remove restore app

After the restore has been completed, you can remove the BackHub restore app and it’s permission. Head over to the app settings at GitHub and choose the organization from wich you want to remove the app. Removing the restore app increases the security of your account.

You can restore everything that is included in the backup. However, due to limitations of the GitHub API, some data can't be restored directly or comes in a different format for practical reasons:

  • Wikis can't be restored directly back to GitHub. Please follow these instructions if you want to restore a wiki.
  • Pull requests can only be restored as issues.
  • When restoring, all issues are filed by you and have the current date stamp but we include the original author and issue date as text in the issue description.
  • We don’t link @mentions in issues or comments. If we would do so, users who have been participating might get flooded with notification emails.
  • We don't assign issues in order to avoid email notifications when restoring. The information about the original assignee is written in the issue description.

Account

If you want to change your plan, please head over to GitHub Marketplace click “Edit your plan” and choose the account’s plan you want to change.

Edit GitHub Marketplace plan

In the “Edit your plan” dialog you will find a select box where you can choose another plan. Please select a plan that suits your needs and click on “Issue plan changes”.

Change GitHub Marketplace plan

Please note that in case you have more backups in your account than your plan allows, backups that exceed the quota will be deactivated.

1. Cancel your GitHub Marketplace plan

If you want to cancel your account, first you need to cancel your plan on GitHub Marketplace.

Please head over to GitHub Marketplace, click “Edit your plan” and choose the account’s plan you want to cancel.

GitHub Marketplace edit plan

In the “Edit your plan” dialog, you will find a link “Cancel this plan” in the bottom of the box where you can choose a plan.

GitHub Marketplace plan cancellation

When you cancel a plan, it stays active until the end of the current billing cycle. When your plan has expired, any existing backup in your account is being deleted.

2. Uninstall the BackHub GitHub app

Next, you need to uninstall the BackHub GitHub app.

Uninstall BackHub GitHub app

When you uninstall the BackHub GitHub app, any existing backup in your account is being deleted after 24 hrs.

3. Revoke access

In case you don’t have any other BackHub installations, you can also revoke access for your personal GitHub user, which has been necessary to manage BackHub installations. Head over to the settings of your GitHub user and click “Revoke” for BackHub.

Revoke access for BackHub

When you reach the quota of your current plan, you will see an alert in the BackHub UI. Please follow the instructions on how to change your plan. Once you have more backups in your account than your plan allows, backups that exceed the quota will be deactivated. In order to reactivate the backups, please choose a larger plan.

Basic / GitHub Marketplace

Yes, you can continue using BackHub basic. However we highly recommend using BackHub on GitHub Marketplace for various reasons.

Please also take into account that BackHub basic will be discontinued at some point.

Existing backups in BackHub basic can’t be transferred to BackHub on GitHub Marketplace.

For active backups you can simply create a new account with BackHub on GitHub Marketplace and cancel the old one in BackHub basic.

Inactive or archived backups of repositories which do not exist in your GitHub account must be restored first in order to create a backup for it in BackHub on GitHub Marketplace or downloaded for archiving purposes.

You can also keep the archived backups in BackHub basic with an ongoing account. However, we recommend using BackHub on GitHub Marketplace for various reasons.

“Old account” is referring to all accounts created before the launch of BackHub on GitHub Marketplace on December 5th 2017. We refer to those as BackHub basic because it’s an independently operating service built on a separate infrastructure.

You can login to your account following this link. You can also find a login link in the footer of our homepage.

BackHub basic is the service we have developed and run since 2014. It is still available at app.backhub.co but will be discontinued at some point in future. BackHub on GitHub Marketplace is a new service, available since December 5th 2017 on GitHub Marketplace and built using the new GitHub apps integration. Here are the main differences between the two: 1) BackHub on GitHub Marketplace creates snapshots of up to 30 days back in time while BackHub basic can only create one backup which is being updated on a daily basis. 2) BackHub on GitHub Marketplace is available through GitHub Marketplace which means you get billed for the service on your GitHub invoice. You don't need to setup a separate billing account with BackHub. 3) BackHub basic is built as a GitHub OAuth application while BackHub on GitHub Marketplace uses the new GitHub app integration. This has numerous benefits on how BackHub works on an operational level. A few of them are:
  • GitHub apps allow more fine grained permissions that enable us to only request the permissions that are needed to create and restore backups.
  • GitHub apps get a dedicated token while an OAuth app must use the user token. Creating backups through user tokens can cause problems, especially in the context of an organization for example when an organization admin has created the account and is no longer admin of that organization, backups can't be updated.
There are many benefits using BackHub on GitHub Marketplace as opposed to Backhub basic. Here are the most important ones:
  • it's able to create snapshots for your backups up to 30 days back in time. That means you can rollback to a previous state of your backup.
  • you can pay for your plan with your GitHub account, which means no extra effort to setup yet another account and simple bookkeeping with one unified invoice.
  • it's faster and build on a more scalable infrastructure.
  • it has a more simple and clean UI.
  • it's build as a GitHub app, has it's own token and is therefore independent of the user installing it.