Version Control Best Practices for Software Organizations

Though version control is an essential part of any software development organization’s day-to-day routine, not all teams understand how to best leverage the tools available. Whether your organization is using Subversion, Git or any other tool to protect and manage your company’s valuable software assets, there are a number of ways to maximize those investments and save your teams time and effort. In my last post I shared some best practices for developers when it comes to using version control systems. There are also a number of tips and tricks of the trade that organizations and managers can employ to …

Read More »

7 Version Control Best Practices for Developers

In my last post, Don’t Underestimate the Importance of Version Control, I outlined some of the basics of why version control is important. Version control saves versions of code which can then be reused, or in case of issues, applications can be reverted to older working versions. Popular version control solutions used today are Git, Subversion (SVN), Perforce and others. Version Control is vital at the enterprise software development level where you have a vast number of disparate teams. It is an every-day part of the developer’s routine, but also helps organizations achieve some high-level business goals such as increasing …

Read More »

Don’t Underestimate the Importance of Version Control

Let’s be honest, version control isn’t exactly a topic you would bring up at a dinner party to spice up the conversation. Managing file versions and meticulously reviewing code for errors can be a dull subject. In fact, it rarely makes the headlines — even in software development news when there are far more exciting trends to cover like AI or the latest Apple device hitting the market. But much like no one really talks about putting on clean socks in the morning, setting an alarm at night or looking both ways before crossing the street, version control is an …

Read More »

What’s New? Coverage of the CollabNet and VersionOne Merger

In case you haven’t heard, we recently announced our merger with VersionOne! With this merger, we now offer the industry’s most complete Enterprise Agile, ALM Collaboration, Version Control and DevOps solutions for enterprises and government agencies. By helping clients deliver the highest quality software applications at speed, they in turn can kick innovation into high-gear. We’re excited to embark on this new journey with VersionOne, and we aren’t the only ones. Since announcing, we have seen some great stories come through from some of the most revered publications in the industry. If you want to learn more about the merger …

Read More »

Gerrit Productivity Hack – Handling Large Binary Files with Gerrit, Artifactory and Git LFS

Handling large binary files with Git is a performance pain. You can work around the problem by some proper Gerrit tuning and restructuring your build scripts so that they fetch binaries from an artifact repository instead of having them part of the repo. With Git LFS, there is another approach available that does not require any changes to your build process or Git server configuration. The Gerrit and JGit communities are still working on built-in Git LFS support, but I thought it makes sense to show how Gerrit can be used with a separate Git LFS backend – Artifactory – …

Read More »

Why Your Enterprise Needs a Git Strategy (Part 2)

Having a plan for adopting Git for your enterprise can lead to great results In part two of our blog series (read Part 1) we share tips of adopting and scaling Git in the enterprise. When considering enterprise-wide Git adoption, it is not enough to only evaluate the SCM needs of your organization. The strategy should view Git as a vital part of the application lifecycle management (ALM) platform. Most Git solutions today have both SCM and ALM capabilities and claim readiness for enterprise-scale Git deployment. There are a few fundamental requirements that your strategy must address to make Git …

Read More »

Gerrit Productivity Hacks – Configure Jenkins to stop hammering your Gerrit server

As part of productivity hack blog series, this post is aimed towards Gerrit admins/Jenkins CI owners. This post will talk about how they can configure/tune systems they’re maintaining such that Gerrit servers will have less load caused by CI systems and make them capable of serving human users better. Jenkins usage pattern which can create load on Gerrit server Constant/Frequent Polling We all understand importance and benefits of a good Continuous Integration system. It all begins immediately with having a new source code change in the source code repository. We would want our CI system such as Jenkins to grab …

Read More »

10 Things You Should Know About Git Replication in the Enterprise

1. Git is distributed, isn’t replication a concept for centralized version control systems? You’re right, Git is a distributed version control system. However, most enterprises require their developers to synch their local work with central, “blessed” repositories. Those central synch points make sure no work is lost if a laptop gets stolen or damaged and developers only have to only know one place where they have to go to learn about their colleagues’ work results. The same applies to build/CI servers like Jenkins that will monitor and pull the latest source code from the blessed repository as well. Consequently, most …

Read More »

Stash your Trash – Keep GIT clean with Gerrit 2.10

Stash your Trash - Keep GIT clean - CollabNet

Garbage collection is really important, not just in the real world but also within your Git repositories. If you have lots of development activities going on, chances are very high that your Git clone and push operations will get slower and slower. Fortunately, the cure is simple: Run git garbage collection (git gc). We have seen examples where running gc cut clone and push times by more than 99 percent. Same goes for code browsing activities as well – Run git gc and list your branches online within milliseconds instead of seconds again. If Git garbage collection has so many …

Read More »

Summary of the first Berlin Gerrit Hackathon

Hacking the Gerrit

Between 8th and 12th of September 2014, first Berlin based Gerrit Hackathon took place. It was joined effort of CollabNet, Elego and Aservo to host it. Our event attracted 16 people from various companies, including four Gerrit maintainers. Here is full list of participants: Dave Borowitz (maintainer) (Google), David Pursehouse (maintainer) (Sony Mobile), Saša Živkov (maintainer) (SAP), Edwin Kempin (maintainer) (SAP), Sven Selberg (Sony Mobile), Gustaf Lundh (Sony Mobile), Khai Do (OpenStack / IBM), Christian Aistleitner (Individual), David Ostrovsky (Individual), Deniz Türkoglu (Spotify), Carlos Martín Nieto (Elego), Eryk Szymanski (CollabNet), Jacek Centkowski (CollabNet), Johannes Nicolai (CollabNet), Dharmesh Sheta (CollabNet), Dariusz …

Read More »