Good points.<p>Two issues:<p>(1) All code review tools I know of currently use merges <a href="http:&#x2F;&#x2F;programmers.stackexchange.com&#x2F;q&#x2F;256789&#x2F;108980" rel="nofollow">http:&#x2F;&#x2F;programmers.stackexchange.com&#x2F;q&#x2F;256789&#x2F;108980</a><p>(2) If you want to keep your local work up-to-date, you need to rebase. It can be painful to do this after a while; many like to do it often. If you have a conflict, you will need to resolve it everytime you rebase, unlike merge, which saves the conflict resolution in the merge commit. You can use git rerere, though it takes some effort <a href="https:&#x2F;&#x2F;git-scm.com&#x2F;docs&#x2F;git-rerere" rel="nofollow">https:&#x2F;&#x2F;git-scm.com&#x2F;docs&#x2F;git-rerere</a>