Is the 'bitmaps' Git functionality to optimize server side performance (e.g. git clone) supported by Bitbucket Server?

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?

2 answers

1 accepted

This widget could not be displayed.

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".

 

This widget could not be displayed.

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:

 

Git

    Path /usr/bin/git

    Version 1.9.1



According to git's own documentation, "pack.useBitmaps" defaults to true:

pack.useBitmaps

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.

https://git-scm.com/docs/git-config/2.1.3

 

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. 

edited answer based on your comment

Thanks again smile 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.

Suggest an answer

Log in or Sign up to answer
Community showcase
Published Aug 21, 2018 in Bitbucket

Branch Management with Bitbucket

As a project manager, I have discovered that different developers want to bring their previous branching method with them when they join the team. Some developers are used to performing individual wo...

1,308 views 8 11
Read article

Atlassian User Groups

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!

Find my local user group

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

Groups near you