Improvements in Bonobo Git Server 3.0 and 3.1

The new version of Bonobo Git Server has been around for couple days and I think now it’s a good time to write couple words about it. It brings major functionality improvements as well as a huge redesign.

Diff for files

The first important feature added to the version 3.0 is the ability to see what’s changed in every commit and in every file.

Diff view for specific files with details

In the detail of the commit, you can see the list of changed files and affected lines. Below, there is a visual diff for each file with clear distinction of changes.

Implementing this feature was easier than I thought. The API for changes is in the LibGit2Sharp library already. It gives you the diff in a string and after that it is rendered in pre element and highlighted with highlight.js which I started to use instead of SyntaxHighlighter.

Redesign

The most visible change in this release is the new design. Let’s face it. The previous one was old. And I mean 2000’s old.

So, I decided to start from scratch and use one of the cool CSS frameworks – I used Pure CSS instead of popular Bootstrap. The reason for this was that I didn’t need all the bell and whistles that bootstrap provides and I wanted to create a custom theme with a good typography support.

The list of commits in a new design

Speaking of typography, I am still influenced a lot by an amazing Butterick’s Practical Typography. I decided not to overcomplicate it too much and went with OpenSans and default monospace font for code depending on the OS that is used.

The new view for files

Last thing I used for the design purposes is a font as well, but with a different purpose. It’s called Font Awesome and it gives you lots of handy icons in a form of a font – which is a brilliant idea and it’s a pleasure to work with.

Cleaner repository browser

I hope that you’ll find the new design more cleaner with improved usability. I tried to give the important stuff more place on the screen than it was before the change. Please, let me know your thoughts in the comments bellow.

Donations

After a couple request, I added the ability for donations in Bitcoins. So, if you are into crypto-currencies and into Bonobo Git Server do not hesitate to drop me few cents. Implementing the donation process was really easy with a ready-to-use button from BlockChain.

Also, I’m experimenting a little with Git Tip. It’s a nice idea and it has a git in its name, but I haven’t had any donation from this channel.

Demo

Also, I played a bit with Windows Azure and I added a demo on the virtual machine there. So, you can run your own instance of Bonobo Git Server on Azure if you want to.

And you can test new features and see the new design here. I hadn’t experienced any problems during the installation, so it’s a really straightforward process.

Next steps

At the moment, I focused on the performance of repository browser and the repositories with large commit history.

Also, there are some discrepancies for browsing when being an anonymous user which I’d like to fix.

And the last thing I want to focus on is the support for git features – namely submodules.

The server is getting more and more attention and I’d like to make it more professional. For that, I’d like to introduce a few simple subscription plans that would allow your company to get help with installation process, integration or simply keep the project going.

But don’t worry – Bonobo Git Server will stay open.

I’d like to hear more from you, so drop me an email or leave a comment.


Would you like to get the most interesting content about C# every Monday?
Sign up to C# Digest and stay up to date!