Comparing the pros and cons of Bitbucket to Github [closed]
Asked Answered
M

4

41

Disclaimer: This is a subjective question. Please follow relevant guidelines.

I am considering the migration of source code from a traditional VCS to a DVCS. Since having a decent GUI web-based frontend and workflow tools are a must, the two obvious candidates are Bitbucket and Github.

Unfortunately I have no in-depth experience with either of them, so I'd really like to have a few second opinions before taking the dive. Especially welcome would be observations from a team/business perspective regarding day-to-day usage and features that have an impact on productivity.

What is Your experience with either of them? Any particular highlights or annoyances?

Mirna answered 11/8, 2011 at 10:43 Comment(8)
What did you find that was deemed a decent GUI for Git?Terret
@Andrew Finnell: GUI as in having a web-based frontend a.k.a. Github.Mirna
From a business perspective, being able to push through https can make a difference: #3717629, from #4372806. Bitbucket should have that as well (confluence.atlassian.com/display/BITBUCKET/…)Sonnie
Have you considered Kiln too? It's a third good choice.Prepotent
Ok, I was wrong in closing this question as not-constructive, my apologies. I removed the comments referring to the closing and replaced them with this instead.Yvor
@Lasse V. Karlsen: No harm done.Mirna
Bitbucket sucks if you need to access it from a mobile device. Their website doesn't render differently on mobile to the desktop. Makes it really hard. Also, you can't search the repo for a specific line of code via the website. These 2 things make it nearly impossible for me to function and update issues and code from an iphone 4 that can't get iOS8 where I'd be able to buy a third party app that enables this via BitBucket's APIs.Overblouse
Note that BitBucket no longer support Mercurial. (August 2019)Sonnie
T
14

You really need to answer a basic question first. Do you want to use Mercurial or Git. I had to make this decision earlier this year. Mercurial was by far easier to setup and start using. I ultimately chose Git for the following reasons:

  • Most OpenSource Projects are moving from SVN to Git
  • Git allowed the most flexibility in whatever I wanted to do. (This is the main reason)
  • Third-party integration

If your business might need complicated version control processes go with Git. The learning curve is steep but it will be easier to do what you really want at the end of the day. I will qualify what I mean by 'steep'. The difference between teaching someone Mercurial vs. Git, is trying to get a Windows user to learn Linux command lines.

If you want a quick easy to use DVCS in which you think simple branching and versioning is all you will ever need, don't kill yourself with Git, use Mercurial. But keep in mind most people you talk to in Mailing lists, IRC, etc. will have experience with Git not Mercurial.

If you plan on paying for GitHub or BitBucket, I suggest you also look at Kiln. FogCreek has made mercurial even easier.

Terret answered 11/8, 2011 at 11:4 Comment(4)
P.S. BitBucket currently supports Git too, so the choice between the hosting solutions does not rely on that - or, perhaps, go with bitbucket and keep your options open...Teacart
@Teacart Agreed. For enterprise BitBucket is the choice I would make now.Terret
I almost exclusively use the Eclipse Git plugin so commands are not a issue. But yes, you might need to use the command line.Casillas
As @Sonnie mentions, Bitbucket is ending Mercurial support and will be continuing with Git only.Mirna
A
33

if you are new to them both then it depends on what you need. a free github account doesn't include any private repositories whereas bitbucket free account gives you unlimited private repositories.

this was the selling thing for me - I didnt want to initially pay for github as i was trialing it but i didnt want me code to be free for all as it was commercial. This lead me to choose bitbucket

I now use both (github for my OSS products and bitbucket for more locked down code) but I am moving my entire team away from SVN to mercurial as it was a simplier step to go to that git. From personal experience, it was easier to get to grips with Hg initially before git when I was using a DVCS for the first time. It didnt require the complex git install and could be used from within the windows cmd or powershell windows

Aery answered 11/8, 2011 at 10:46 Comment(9)
Actually I am asking from a business perspective. Subscription costs aren't that much of an issue.Mirna
apologies answer updated of the way i moved and whyAery
One argument that makes me want to use Github over BitBucket is how much they seem to be concerned about security: help.github.com/security // You can compare it with BitBucket's security policy: atlassian.com/hosted/securityStrangeness
@conradk security policy is necessarily a testimony to implementationLiquesce
@ObmerkKronen did you mean is not necessarily a testimony?Mond
@OpenLearner - Obviously. Sorry for the Typo. in SE Can not amend or correct comments errors . :-)Liquesce
@ObmerkKronen it ain't no thingMond
Just remember the size limitations of GitHub: help.github.com/articles/what-is-my-disk-quotaGeest
@fuzzyanalysis; As an update, they now have git large file storageColincolinson
S
15

Atlassian is doing a great job improving Bitbucket since they aquired it. They are a company with a great product portfolio for software development/project management tooling. I think from a business perspective, that might be something to consider, especially if you use their tools already.

Surcingle answered 20/8, 2011 at 21:52 Comment(1)
Confluence, Bamboo, and Crucible are all wonderful products made by Atlassian. Definitely can't go wrong with them.Gleet
T
14

You really need to answer a basic question first. Do you want to use Mercurial or Git. I had to make this decision earlier this year. Mercurial was by far easier to setup and start using. I ultimately chose Git for the following reasons:

  • Most OpenSource Projects are moving from SVN to Git
  • Git allowed the most flexibility in whatever I wanted to do. (This is the main reason)
  • Third-party integration

If your business might need complicated version control processes go with Git. The learning curve is steep but it will be easier to do what you really want at the end of the day. I will qualify what I mean by 'steep'. The difference between teaching someone Mercurial vs. Git, is trying to get a Windows user to learn Linux command lines.

If you want a quick easy to use DVCS in which you think simple branching and versioning is all you will ever need, don't kill yourself with Git, use Mercurial. But keep in mind most people you talk to in Mailing lists, IRC, etc. will have experience with Git not Mercurial.

If you plan on paying for GitHub or BitBucket, I suggest you also look at Kiln. FogCreek has made mercurial even easier.

Terret answered 11/8, 2011 at 11:4 Comment(4)
P.S. BitBucket currently supports Git too, so the choice between the hosting solutions does not rely on that - or, perhaps, go with bitbucket and keep your options open...Teacart
@Teacart Agreed. For enterprise BitBucket is the choice I would make now.Terret
I almost exclusively use the Eclipse Git plugin so commands are not a issue. But yes, you might need to use the command line.Casillas
As @Sonnie mentions, Bitbucket is ending Mercurial support and will be continuing with Git only.Mirna
C
8

As already mentioned the difference between the options you mention is really git vs. Mercurial. This cannot be stressed enough.

git is a tool written by exceptional programmers for their personal needs. They want to be able to do exceptionally advanced things, they are confident that they know what they are doing.

If your organization does not only employ exceptional programmers, expect high costs for learning, trouble shooting and frustrated people discussing in the coffee room when using git.

Mercurial gives you 80% of the functionality for 20% of the effort compared to git. (Hmm, such claims might be close to violate Stackexchange policies, I have no real statistical evidence behind these numbers)

For the average programmer the functionality of git and Mercurial are very close to each other. For some special cases git might be superior even from business perspective. If they apply to you, I assume you have git experts in you organization already. If they can convince you, go for it.

I cannot comment about the service quality of the hosters you mention.

Disclaimer: Yes, I do use git and I do like it in certain aspects.

Compelling answered 13/8, 2011 at 9:23 Comment(1)
git is indeed very popular these days. So can the masses be wrong? This blog entry gives more details: nfarina.com/post/9868516270/git-is-simpler "The Emperor's new clothes", you couldn't characterize it better.Compelling

© 2022 - 2024 — McMap. All rights reserved.