Conclusions

In this section, I’ve listed a series of arguments, most of which came from fellow team members. Here’s how it seems to break down: Git veterans insist that branches are the way to work, whereas newcomers tend to feel intimidated when asked to navigate Git branches. Git is not an easy tool to master. What we’ve discovered, accidentally, is that when you stop using branches at all, Git becomes trivial to use. It literally comes down to six commands (clone, remote, commit, log, push, and pull). Furthermore, a branch-free process actually works; we’ve used it for a couple of years now with no visible downside except surprise to the veterans, and growth of “single” projects over multiple repositories.

If you can’t use forks, perhaps because your firm doesn’t trust GitHub’s private repositories, then you can perhaps use topic branches, one per issue. However, you’ll still suffer the costs of getting up-front consensus, low competitiveness, and risk of human error.

Get ZeroMQ now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.