Julio Biason
5 years ago
4 changed files with 39 additions and 2 deletions
@ -0,0 +1,36 @@ |
|||||||
|
+++ |
||||||
|
title = "Things I Learnt The Hard Way - Gerrit Is A Mistake" |
||||||
|
date = 2019-07-29 |
||||||
|
|
||||||
|
[taxonomies] |
||||||
|
tags = ["en-au", "books", "things i learnt", "git", "gerrit"] |
||||||
|
+++ |
||||||
|
|
||||||
|
I hate calling software "a mistake", but I can't find any other way to |
||||||
|
describe Gerrit. You may see people using Gerrit 'cause Google uses it. The |
||||||
|
thing is: Google misunderstood what Git actually is. |
||||||
|
|
||||||
|
<!-- more --> |
||||||
|
|
||||||
|
When Linus Torvalds came with Git, he was trying to mimic another system, |
||||||
|
BitKeeper. Along with some improvements over CVS and SubVersion, Git made |
||||||
|
really easy to create and merge branches, something that was either |
||||||
|
almost-not-supported or slow-as-heck, depending on which tool you look at. |
||||||
|
|
||||||
|
You need to take this into consideration: Git made branches easy. |
||||||
|
|
||||||
|
Then someone came with the idea of Gerrit: Instead of managing branches, it |
||||||
|
actually manages _commits_. Instead of having a branch for each feature, you |
||||||
|
should have _one single commit_ as feature. You can have branches on your |
||||||
|
machine, but the server only deal with commits. |
||||||
|
|
||||||
|
So Gerrit took Git, a tool that improved the way we deal with branches, and |
||||||
|
removed branches. This is akin to taking a text editor and taking away the |
||||||
|
ability to _edit text_. Does that sound right to you? |
||||||
|
|
||||||
|
In my personal opinion, what they did was to take git apart and put an err in |
||||||
|
the middle: gERRit. |
||||||
|
|
||||||
|
When I see someone using Gerrit, I know something is wrong there. |
||||||
|
|
||||||
|
{{ chapters(prev_chapter_link="/books/things-i-learnt/one-change-commit", prev_chapter_title="One Commit Per Change", next_chapter_link="/books/things-i-learnt/project-organization", next_chapter_title="Organize Your Code by Data/Type, Not Functionality") }} |
Loading…
Reference in new issue