{"id":1689,"date":"2020-12-21T09:21:40","date_gmt":"2020-12-21T09:21:40","guid":{"rendered":"https:\/\/jan.schnasse.org\/blog\/?p=1689"},"modified":"2026-09-28T11:38:32","modified_gmt":"2026-09-28T09:38:32","slug":"gerrit-branching-compared","status":"publish","type":"post","link":"https:\/\/jan.schnasse.org\/blog\/2020\/12\/21\/gerrit-branching-compared\/","title":{"rendered":"Gerrit Branching Compared"},"content":{"rendered":"<h1>Gerrit<\/h1>\n<p><a href=\"https:\/\/jan.schnasse.org\/blog\/wp-content\/uploads\/2020\/12\/gerrit-1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1692\" src=\"https:\/\/jan.schnasse.org\/blog\/wp-content\/uploads\/2020\/12\/gerrit-1.png\" alt=\"\" width=\"641\" height=\"730\" \/><\/a><\/p>\n<ul>\n<li>Progresses commit after commit.<\/li>\n<li>Each commit is rebased to the current status of the &#8218;develop&#8216; branch.<\/li>\n<li>All commits are verified and reviewed.<\/li>\n<li>Commits can be changed and overridden during review.<\/li>\n<li>Master branch keeps track of releases.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<ul>\n<li>Tends to result in larger commits.<\/li>\n<li>Tends to result in multi-purpose commits<\/li>\n<li>Developers are forced to keep track of current development.<\/li>\n<li>Only working solutions pass review and become part of the history.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<ul>\n<li>Local git configuration needed<\/li>\n<\/ul>\n<h1>Github\/Gitlab<\/h1>\n<p><a href=\"https:\/\/jan.schnasse.org\/blog\/wp-content\/uploads\/2020\/12\/gitlab-variant-1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1691\" src=\"https:\/\/jan.schnasse.org\/blog\/wp-content\/uploads\/2020\/12\/gitlab-variant-1.png\" alt=\"\" width=\"641\" height=\"645\" \/><\/a><\/p>\n<ul>\n<li>Changes are provided as MergeRequest\/PullRequest for series of commits.<\/li>\n<li>Merge Requests are verified and reviewed.<\/li>\n<li>Master branch keeps track of current state of development<\/li>\n<li>Release-Tags are used to mark certain points in development as release.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<ul>\n<li>Tends to result in multiple small commits.<\/li>\n<li>Tends to result in single purpose commits.<\/li>\n<li>Can lead to large changes with the risk of conflicts. Strategies for conflict resolving are needed.<\/li>\n<li>Detailed process can vary from repo to repo.<\/li>\n<li>Developers must be willing to keep track with current development.<\/li>\n<li>It is less common to override commits.\u00a0 Therefor history tends to become a record of the development process itself.<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Gerrit Progresses commit after commit. Each commit is rebased to the current status of the &#8218;develop&#8216; branch. All commits are verified and reviewed. Commits can be changed and overridden during review. Master branch keeps track of releases. &nbsp; Tends to result in larger commits. Tends to result in multi-purpose commits Developers are forced to keep [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[],"class_list":["post-1689","post","type-post","status-publish","format-standard","hentry","category-development"],"_links":{"self":[{"href":"https:\/\/jan.schnasse.org\/blog\/wp-json\/wp\/v2\/posts\/1689","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jan.schnasse.org\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jan.schnasse.org\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jan.schnasse.org\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jan.schnasse.org\/blog\/wp-json\/wp\/v2\/comments?post=1689"}],"version-history":[{"count":1,"href":"https:\/\/jan.schnasse.org\/blog\/wp-json\/wp\/v2\/posts\/1689\/revisions"}],"predecessor-version":[{"id":4030,"href":"https:\/\/jan.schnasse.org\/blog\/wp-json\/wp\/v2\/posts\/1689\/revisions\/4030"}],"wp:attachment":[{"href":"https:\/\/jan.schnasse.org\/blog\/wp-json\/wp\/v2\/media?parent=1689"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jan.schnasse.org\/blog\/wp-json\/wp\/v2\/categories?post=1689"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jan.schnasse.org\/blog\/wp-json\/wp\/v2\/tags?post=1689"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}