I understand that 'bitmaps' was implemented in core Git during 2015, and this can give major improvements to server-side performance for some operations including clones. Please can you let me know if Bitbucket Server leverages this?
After asking one of the Atlassian people at Atlas Camp 2016, I received the following answer:
"Since we still support Git 1.8 on the server, we don't (currently) write any special configuration to enable bitmaps. It is not enabled by default, so no not yet. But they should be able to enable bitmap support on their server in the global git config and it would work".
Bitbucket Server uses whatever version of "git" is installed in the host operating system.
If you go to the "Support Tools" section under Admin (/plugins/servlet/stp/view/), and click on "System Information," you can see the Git version that your instance is using. Here's mine:
According to git's own documentation, "pack.useBitmaps" defaults to true:
When true, git will use pack bitmaps (if available) when packing to stdout (e.g., during the server side of a fetch). Defaults to true. You should not generally need to turn this off unless you are debugging pack bitmaps.
And since I get no match on a full grep of Bitbucket's source code for the term "useBitmaps," I presume git's default wins. But you might want to verify by investigating data over the wire. I'm not sure how you would do that.
Thanks. That's true, but it doesn't really answer my question. Just because I have a recent version of Git installed does not necessarily mean that Bitbucket Server supports all the available functionality associated with that version. I believe that 'bitmaps' are not switched on in core Git by default. I expect people who are involved in Bitbucket Server development will know if they have implemented anything with this.
Thanks again my hope is that the nice people at Atlassian should be able to state somewhere what the status of this is without me having to go and investigate. They don't usually hold back when it comes to pointing out performance enhancements, and bitmaps can make a really big difference, it is said.
You may be right and Bitbucket Server is forking out to the native Git and running server side clones with useBitmaps = true. I'm skeptical though until I know for sure.
Bitbucket Pipelines helps me manage and automate a number of serverless deployments to AWS Lambda and this is how I do it. I'm building Node.js Lambda functions using node-lambda ...
Connect with like-minded Atlassian users at free events near you!Find a group
Connect with like-minded Atlassian users at free events near you!
Unfortunately there are no AUG chapters near you at the moment.Start an AUG
You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs
We're bringing product updates and pro tips on teamwork to ten cities around the world.Save your spot