Love GitHub? 4 Reasons Why You Should Host Your Code On BitBucket

Any programmer worth their salt knows that source control is crucial. The most obvious perk  is allowing you to securely store your code in a safe place. It doesn’t stop there. Having good source control makes it easier to experiment with new features without worrying about irreparably damaging your program. Source control is something we all should do.

But regardless of what Version Control System (VCS) you use, you have to think about where you intend to store your code. It’s likely you’ve have heard of GitHub. That’s not surprising. GitHub is used by individuals and enterprises to host code, collaborate on documentation and track issues. It has some pretty big names using it. It’s a pretty big deal.

But have you heard of BitBucket? You should have. BitBucket has been around for a long time, having been founded in 2008 and bought out in 2010 by Aussie tech giant Atlassian after having developed its own committed contingent of die-hard fans. But is it a worthy competitor to GitHub? And more importantly, is it any good? Here are four reasons you should consider using Bitbucket.

Note: BitBucket has pricing plans scaled for users. It is totally free for 5 users.

You have greater choice in what VCS you use.

iPhone or Android. Chrome or Firefox. Vim or Emacs. Geeks don’t agree on much. Despite a tendency for the cerebral, the same is also incredibly true of software developers.

To many, espousing a preference for Mercurial over Git is almost like saying you enjoyed Gigli. Likewise, saying that SVN is better than Git will earn you some dirty looks from others. Yep. The topic of what VCS is the best is incredibly controversial.

VCSs in short are the mechanism you use to store code in a safe place. Each system does things in a slightly different way, and it goes without saying that coders are prepared to defend their favorite VCS to the death. Mercifully, BitBucket gives you a bit of flexibility with how you store, branch, and manage your code and allows you to choose between Git and Mercurial. As you can expect, each have their strong points and their not so strong points.

Blogger Patrick Thompson described Git as being a bit like MacGuyver — bringing in as many features as possible, and allowing the user to create their own source control workflow — and Mercurial as being like James Bond. Fast, accessible but maddeningly inconsistent.

You can read this as reason one. Atlassian have taken a bit of a laissez faire approach and haven’t presumed to force you to favor one VCS over another. This is a huge bonus to those who can’t grasp the syntax of Git, or just prefer using a familiar product.

You can have as many private repositories as you want.

Sometimes you want to show the world what you’re working on. Perhaps that explains the rise and rise of GitHub, and its status as ground zero for open source code.

But what about the stuff that you don’t want to share with the world?

If you work as a freelance developer, you will undoubtedly want to keep some stuff private. You’ll definitely want to avoid sharing the proprietary work you have done for clients. If you use any API keys or secrets in the stuff you make, you’ll want to keep them hidden from prying eyes also.

bitprivate   Love GitHub? 4 Reasons Why You Should Host Your Code On BitBucket

It is here where GitHub falls short. Sure, I suppose you can always fork over some cash each month for a handful of private repositories.

This is reason two for checking out BitBucket, which offers unlimited private repositories with as many as five collaborators. All totally gratis.

You can trust it.

Back in the day, SourceForge was the king. Developers flocked to it for its free hosting (then a novelty) of code and binaries. A lot has changed since then. It has seen an exodus of users and developers and has been bought out by new owners who have made some questionable decisions with their latest acquisition.

According to Justin Clift, writing on the Gluster blog.

“Dice, the new owners, strongly encourage the top projects to use a new (closed source only) installer that pushes spyware / adware / malware. … With their recent changes, users downloading from SourceForge now receive a special closed source installer which attempts to foist unrelated third party software onto them.”

This is reason three for trying out BitBucket. Atlassian is no fly by night venture. They’ve been around the block a few times, having released some incredible products that are used by hundreds of thousands of people and garnered a great deal of goodwill from a notoriously fickle developer community. With that in mind, it doesn’t seem likely that they’d compromise the quality of product in order to make a quick buck.

“There’s an app for that”!

BitBucket might not be GitHub, but that doesn’t mean that it’s a barren, unloved wasteland of a product. There is an active community who make and maintain a set of applications that use and extend BitBucket.

Android has Bitbeaker; a simple app that makes it easy for you to look at your repositories and track changes and issues while on the move.

bitbeaker   Love GitHub? 4 Reasons Why You Should Host Your Code On BitBucket

For OS X (and Windows), there’s SourceTree. Like BitBucket, it’s developed by Atlassian. It offers beautiful visualizations of your projects, and a nice graphical interface for your Git and Mercurial repositories.

sourcetree   Love GitHub? 4 Reasons Why You Should Host Your Code On BitBucket

This is reason four. A popular website having a desktop or mobile application isn’t exactly novel. However, it is the quality of the third party apps that I feel are a distinguishing feature of this Antipodean source management product.

Drawbacks

BitBucket might have a lot going for it, but it’s hardly the bustling open source metropolis that GitHub is.

When you write open source software and release it with a permissive Open Source license, you are effectively making a statement that you want your code to have an audience. Moreover, you are stating that you want to display your fluency and ability as a programmer to the world. You want people to see what you’re working on.

GitHub gives you that audience. It has effectively became a byword for ‘open source’, having effectively enticed the folks behind Ruby on Rails, the Linux Kernel and BootStrap, the front end toolkit that powers many millions of websites. In addition, it has pioneered some incredible social features too, allowing you to follow, star and like, just as you would on Facebook. It’s coding, but with an emphasis on interactions, companionship, and community.

Sadly, these attributes are not as pronounced on BitBucket as they are on GitHub. However, some might say that the flexibility of BitBucket and its free private repositories make up for its social shortcomings and its lack of affection in the open source community.

Conclusion

BitBucket is a tool that I’d heartily recommend, and I absolutely adore using. It’s not GitHub, but it does have its place. What do you use to store your code? Would you consider giving BitBucket a go? Let me know in the comments.

The comments were closed because the article is more than 180 days old.

If you have any questions related to what's mentioned in the article or need help with any computer issue, ask it on MakeUseOf Answers—We and our community will be more than happy to help.

14 Comments -

0 votes

Oleh

Great post, we got BitBucket recently used at FreezePro Software and love it

0 votes

Matthew H

That’s pretty cool! What do you like about it?

0 votes

Oleh Mykhaylovych

First and main is that is good connected with internal bug/task tracker system
And within free account it provides multiple repositories and teams to create as well as bugtracker separately for each.

Thanks for sharing Source Tree, now I can check updates from MAC device.

0 votes

Matthew H

Great reasons! I wish it was more popular though. :(

I like Source Tree, and I use it a fair bit. It still can’t beat Git command line for me though. Old dogs, new tricks and all that. I’m set in my ways.

0 votes

Glenn

Urgh, kinda mad at myself for taking the link bait. All of these reasons are pretty lame, but I’ll enumerate them anyway:

1: GitHub has had SVN support for as long as I can remember (https://github.com/blog/966-improved-subversion-client-support), for those that prefer using a familiar product. And hg-git adds native support into mercurial to push to a git repo.
2: I’ll give you this one. Personally I’ll happily pay for services I depend on, they’re more likely to stay in business that way and I’m more likely to be able to trust them as a result.
3: Seriously? They both launched in 2008. Atlassian acquired BB in 2010, the same year they received $60M in VC funding from Accel Partners (http://www.brw.com.au/p/tech_growth_star_revs_next_atlassian_IVOrGq78Q1708BKyUXD6nN). GitHub closed a $100M round from Andreesen-Horowitz (http://go.bloomberg.com/tech-deals/2012-07-09-github-takes-100m-in-largest-investment-by-andreessen-horowitz/) for a similar valuation last year.
4: You know GitHub has native apps too, right? And that they’ve the same level of design polish as the rest of the GitHub experience? https://github.com/blog/1127-github-for-windows http://mac.github.com/ http://mobile.github.com/ and if you really want to use/build out a 3rd-party option you can do that too: https://github.com/blog/362-open-source-github-iphone-app

You’ve completely ignored the fact that the main benefit of GitHub is the collaboration features, it’s what they call out front-and-center on their homepage: http://cl.ly/image/1c1t2V2E2T3K The ability to store code on a server is pretty quickly becoming commoditized.

There’s probably some really compelling reasons to use BitBucket instead of GitHub, but for all of the ones you’ve pointed out GitHub win in my book.

0 votes

Face

Good post.

I’m not frequenting Github anymore, as I have everything on BitBucket (and more). I even deleted my account there, as well as all my mirrors. Since I prefer Mercurial, constantly having to fiddle with Git (or bridges) just got on my nerves. Thus the mirrors were often out of sync with the “real” repos, but with many people only looking at Github – finding my name/project – the mirrors were assumed to be the “official” places, even though described otherwise. Without my match there, people eventually found the BitBucket origins as single point of hosting.

I have to admit that on the few occasions I visit Github (e.g. to look at somebody’s code), I’m always appalled by the interface and lack of quality of many projects hosted there. I guess the later simply comes from the fact that everybody – using the free service of Github – has to have his project public, even if it is not really in a state for that. On BitBucket, many users take their first steps in private repos – often with selected collaborators – before going public, so the majority of projects publicly viewable there increase the overall perception of quality.

Sometimes whether or not a certain project is hosted on Github often influences my decision of contributing to it, too. Not that I don’t want to use Git to contribute to a project, but there often is this aura of arrogance around it that makes me shy away. I never really felt this on BitBucket (no matter if Git was used or not). But perhaps it is just personal experience, or simply due to the much smaller user-base, so YMMV.

0 votes

Den

The biggest arrogance is some sort of general sentiment that you need to host OSS on GH to succeed :(.

1 votes

DLion

Cool post!
I use Github to share my open source projects and bitbucket to store and manage my personal projects.

0 votes

Cristian Viorel P

Bitbucket FTW!

0 votes

Craig

GitLab Cloud. It has all the benefits of GitHub Enterprise or BitBucket (can create unlimited private repos) but allows you to have unlimited developers. :)

1 votes

Mauricio

I think it really depends, I like them both. One thing that is very important in my case is that I can automatically link commits to Jira. I just couldn’t make it without this feature. Sure, I could setup Github with that too, but it is not so integrated.

As stated above, I would stick with Github for open source developments and Bitbucket for private stuff.

Nice post by the way, thanks!

0 votes

Tyler

I just decided to try Bitbucket so I can have free private repository’s. Thanks for the article!

0 votes

Simon

Why on earth would I need an app specific to a service provider when the service hosted already has tools that work also with other services ?

0 votes

Brad

Atlassian’s Sourcetree application even has support for Bitbucket and Github … Githubs client only has Github support. I like Atlassians inclusion method instead of Githubs exclusion one.