In June 2018 a headline surprised a lot of people around the world: Microsoft announces the purchase of the developer platform GitHub for $7.5 billion. GitHub confirmed the deal . Wow! What a bomb. This is only the tenth multi-billion dollar acquisition of Microsoft in its history. Instantly quite a few important questions popped up in our heads – as developers and frequent users of this platform:
This article targets to give you answers for that.
In the past, the acquisition of competitors or other players has proven that it is not always obvious what is going on behind the scenes. What is normally announced as a strategic addition to the company’s portfolio often turns out to be different, and ends up with a discontiunation of service or decline in quality. As an example, you may remember the acquisition of SUN Microsystems by ORACLE in 2009  that ended up in breakup of the development team of Solaris/OpenSolaris as well as the integration of Hotmail (1997) , Skype (2011) , LinkedIn (2016)  and NOKIA (2016)  into the Microsoft universe that led to quite a few dissatisfied users.
For the founders of GitHub it is a huge success story to develop a platform based on a revision control system to a place nearly every software project uses. With regards to current popularity former websites like SourceForge  and competitors like BitBucket  are quite far behind.
As announced by Satya Nadella, CEO of Microsoft, the company aims “[to strengthen their] commitment to developer freedom, openness and innovation”. The aquisition of GitHub confirms the new course towards integration and openness of Open Source technologies and platforms that started with the takeover by Satya Nadella in 2014.
However, in future Microsoft has to be very sensitive to users. The GitHub community has an Open Source relation and – as usual – comes with stronger reservations regarding Microsoft and its way of doing business. Based on that the question is if the developers trust in the course/announcements of Microsoft. Most of us don’t.
The NSA in the US and the documented collaboration (National Security Letters) of Microsoft puts commercial competitors in an awkward position. Microsoft’s communications with others has and continues to be compromised. When it comes to “bug fixes”, new exploits are still being discovered in patches .
As for changes that is yet to be seen, observed up until now the intension is to leave the platform untouched. Most of the source code is stored in repositories that are publicly available anyway – so for them there is no change. A rather critical issue might be the non-public repositories from competitors. Technically, Microsoft can access these too as they are now the owner of GitHub.
Developers should seriously consider mirroring their projects with another provider, in another legal jurisdiction, preferrably more affordable and accessible to smaller players. Microsoft has a history of anti-competitive behavior that is difficult to match in case of a legal dispute.
In case you do not trust GitHub anymore you may consider a change to a different platform. Different models are offered by GitLab , Gitia , GitKraken  and Beanstalk  and others. Keep in mind that they have different prices, and check what fits your needs.
Keep generic code open source, and your secret source in-house. A change is done quickly but you need to move pre-emptively before you are left at the mercy of your competitor.
Sooner or later a change of ownership always brings surprises. Stay with your repository at GitHub, keep your eyes open, and move quickly if needed for non-strategic open source projects. Keep in mind that in all cases budget for higher costs as you are forced to duplicate some or all of your code workflow.
The author would like to thank Axel Beckert, Zoleka Hatitongwe and Gerold Rupprecht for their support and critical remarks while writing this article.
Today we are excited to announce that BackHub is now available on GitHub Marketplace. It’s an all new version of BackHub that comes with a new feature called “Backup Snapshots” and is built as a GitHub App for a more solid integration, allowing granular, read only permissions in order to easily create backups of your repositories.
Read on for more details or start right away to use the new BackHub.
Earlier this year GitHub has introduced GitHub Marketplace. A platform to find integrations and put them to work within minutes in order to help you evolving and customizing your workflow. This was great news, because for us as integrators that means we can spend more time on core functionality of our apps rather than wasting time on building payment integrations that doesn’t really add value for our users.
Over the last couple of month we have been working in close collaboration with GitHub to integrate our service with GitHub Marketplace and got lots of support from GitHub along the way.
The great thing with BackHub on GitHub Marketplace is that you don’t have to setup a new billing account with us. You can simply use your GitHub account to purchase a plan for BackHub. Besides that, all our plans on GitHub Marketplace come with a 14 day free trial.
BackHub on GitHub Marketplace is not just BackHub on a different distribution channel. It’s a newly built software that comes with additional features and is setup on a whole new infrastructure for an even more robust and reliable service.
With BackHub on GitHub Marketplace we are introducing Backup Snapshots. It’s basically a time machine for all your repositories including the metadata like issues and pull requests associated with it.
BackHub creates daily snapshots and keeps them for the last 30 days. That means you can rollback to a previous state of your repository from any of the past 30 days. This can be important when the history of a repository has been changed with git-reset or git-rebase and data has been lost due to a forced push.
Above that, since metadata like issues etc. are not part of the repository itself and are therefore not being versioned, it can easily happen to loose important data. With Backup Snapshots you can recover any metadata included in the backup from any of the past 30 days.
This has been one of the most requested features to date. It adds an extra layer of security to your backup strategy.
Together with the Marketplace, GitHub has also introduced GitHub Apps (formerly Integrations). They have granular permissions which allows us to ask only for those we need in order to create backups for you. We have separated the backup service from the restore utility (to be released soon) in order to be able to limit our acccess to read-only permissions on your repositories while creating backups and only ask for write permission in case a repository needs to be restored.
GitHub Apps are also able to take actions themselves directly through the API. That means no user impersonation is required which is critical in case roles in your organization change. For example when an organization admin has created the account and is no longer admin of that organization, in the past, backups couldn’t be updated and another admin was required to login. The new BackHub GitHub App however is operating independently to avoid any interruption of service.
You can install BackHub on an organization or user account, then give access to the repositories of your choice. If you give access to all repositories, BackHub will create backups of all current and future repositories in your GitHub account. If you prefer to backup only select repositories, simply limit access to those you want to backup during the installation process.
If you’ve got questions or thoughts on our new product or face any issues using it, please don’t hesitate to contact us.
You can now download the full repository including all branches directly from BackHub.
Until now it was only possible to download a checkout of the latest commit in your master branch as a zip file. However, many users found it irritating that the download contains only files from one branch and thought the backup was incomplete.
That’s why we have changed things and it is now possible to download the complete repository directly from BackHub. That comes in handy if you don’t want to restore the complete repository back to GitHub but still want to work with the repository on your local machine or transfer it to another service.
Another minor thing we’ve changed is the filename of the downloaded zip file. It’s now using the repository’s name as a filename.
In future we are planning to support cloning directly from BackHub servers via https.
While building and running BackHub the last three years, we got lots of user feedback and learned a lot about how a backup solution for GitHub should be like.
One major concern of larger organizations is often to hand over their most valuable data to a young and small startup in a foreign country for the purpose of creating backups.
A distributed version of BackHub that is being run on site behind the firewall could solve this issue but would have many drawbacks in terms of maintainability and convenience.
We’ve decided to go with a solution that lets you use your own, separate storage account with an independent third party company (Amazon S3) to keep all the convenience of a service that is run in the cloud while keeping full control of their data. Another big advantage of this solution is that your data can be accessed anytime, even if GitHub AND BackHub is unavailable.
For BackHub Enterprise we’ve also developed a new way to store backups incrementally. That means you can restore a repository from the last 30 days.
If you are interested in using BackHub Enterprise for your organization, please leave your email address and we will notify you when it’s available.
We’ve been running and improving BackHub since 2014 as part of our web development agency /gebrüderheitz GmbH & Co. KG. We’ve been growing and learning ever since and are now moving things over to a separate business entity, the so called “BackHub UG”, based in Berlin, Germany. From now on, BackHub.co is being run by BackHub UG (limited liability).
Happy New Year everyone.
The BackHub Team