GitHub vs. BitBucket

Simple question, all. Does GitHub have any advantages or disadvantages in comparison to BitBucket, and of course vice-versa?

The most obvious difference is that you can have private projects for free on Bitbucket.

I have been using both.
I used to be using Bitbucket exclusively, but have switched to using Github because I like the interface better.


@jacmoe, so in your experience the choice of which one to work with, and when, comes down to arbitrary personal preference?

@P1xt, so I’m not quite seeing why people use Github at all?

I think for web development, Github beats Bitbucket simply because most, if not all, the projects are hosted there.

And @P1xt is right: Github makes it possible to have large, public projects.
At Bitbucket, IIRC the limit is 5 project members.

I moved because I switched from Mercurial to Git, and because I wanted to fork/contribute to projects at Github. So, instead of having projects in two places, I decided to just have them in one place.

For private projects, I use Gogs :slight_smile:


Aha. So when I’m doing something as part of a small team, and it’s going to stay private, BitBucket or Gogs is the way to go, but if I want to be involved in something opensource, then it’s Github? Thank you both.


Not to mention GitHub has way more integrations than BitBucket.

It’s simple, all my private project, I use bitbucket. Git is just git. Most of the time personal and private project, there are only me like my website, portfolio, tutorials.

But the others that I want to show off, I use GitHub because it is more known by recruiters and professional. I remember for example an AI company that is specialised on IT recruitment and create a robot to read find the best candidate for their clients on GitHub.


Ok, newbie question–what do you mean by integrations?

There is no good reason to use GH ahead of the others especially GitLab IMO. I’ve used both and in many ways prefer GitLab. HOWEVER and this is not of technical importance, but important none the less in user experience and career.

  1. People won’t see your work on GitLab like they will on GitHub. I’ve had this very situation come up and the person didn’t even know where to start to look at my work on GitLab and was baffled why it wasn’t all on GitLab.

  2. Support as a newb is 100x better on GitHub because tons of people use it, it has so much OSS around it that people are always creating videos to assist you. When I started using GitLab it was because I hated following a crowd just because and so I just naturally looked around and I found tons of awesome stuff for free that I had to pay for in GitHub. However I was very new to the whole SVN, Git stuff and so I really struggled because GitLab is horrifyingly bad at support both within the community and when you use their own help pages. You go into the Help pages and it’s all enterprise information and your .com information is hard to find, with relevant help hard to find etc. BitBucket was also of interest to me, but it functions (if I recollect correctly as I was such a newb then) in a manner that doesn’t feel naturally like a Git like GH and GL do. At least their verbage, UIs and so on are similar, function in a way that is consistent and obvious.

  3. Sign in authority. GitHub is also useful because you can sign into many many services that related to software development with your GH account and because of that, many times I am able to just sync code related work directly to my account when appropriate. That will never happy with GL today, but who knows if adoption grows it could, but if you are here on FCC and a newb, worry about what you have on your plate to leverage today, not tomorrow.

If you are completely new to Git, I’d 100% recommend GH and once you have literally been pushing, pulling and forking on a steady basis for a few months, then look at GL because maybe then you won’t spin your wheels trying to just make it through the day and maybe then you’ll need some free GL features that GH will charge you for, but most likely not for a while to be honest.

PS. The tendency is to make your code private, because you suck; I totally get that, but it’s wrong headed. You’ll just have to trust me on this one, but it’ll eventually make sense to you.

1 Like

Since Git is decentralized/distributed it is really easy to deal with the “I suck” trauma. :slight_smile:

  1. Create a repository, commit and don’t push.

  2. Create a repository on another machine, and push to that. (Or even push to a repository on your local machine) Will require some setup regarding access control (http/https/ssh) but it really is relatively simple.

No need for either Github or Gitlab.

Personally, I have lots of private git repositories on my machine, and some private git repositories on my webhost. Not everything needs to be on Github.
Git is nothing like SVN. It is distributed!


That’s a really good point! So true.

1 Like

Personally I prefer BitBucket. If you want people to know about your public repos you’d still add links to your resume. The best thing about BitBucket is that you can have private projects for free - good if you’re in the middle of working on one and don’t want to make it visible before it’s finished. Or if you don’t want some of your projects to be public anymore. Also I think that BitBucket has a nicer interface but that’s personal opinion. The good thing about GitHub is that you can host better web projects on GitHub Pages. I have a few that I completed for coursera AngularJS course. :slight_smile:

1 Like