Mercurial is bad for community code reviews

anatoly techtonik techtonik at gmail.com
Tue Dec 18 13:46:41 UTC 2012


On Tue, Dec 18, 2012 at 4:16 PM, Arne Babenhauserheide <arne_bab at web.de>wrote:

> Am Dienstag, 18. Dezember 2012, 14:47:37 schrieb anatoly techtonik:
> > GnuPG requirement is too strict for an open source project, and this
> still
> > pollutes the history requiring one more changeset per review.
>
> I would not call that pollution. It is the proof of the review. And the
> only
> way to make a secure review without rewriting what you review is adding a
> commit.
>

There is no sense in making secure reviews when anybody with access right
can commit changeset under your name, so there is no point to develop
security-concerned branch if this thread. What is needed is a system like
in Git that has separate committer and author metadata, but enhanced to
have changesets annotated with several reviewers (maybe even authors).

To have a clean log, you can just filter out the signatures. Or use a tool
> which does not show the signature changesets, but annotates the revisions
> instead.
>

You need to store annotations somewhere, because they are not present in
original changeset until it is reviewed. It is a separate layer of
metadata, which is added on top of the first layer (layer that's limited to
the context of single author and commit/pull problem domain).
Featurecreeping over this idea - the second layer of metadata could provide
information specific for review processes - changeset history, squash and
refactoring traces, review history in the form of level-2 log messages.

It can evolve into a concept of MQ-like feature branch for collaborative
work over changesets.


> If you are willing to rewrite history, though, you can just add reviewer-
> information to the commit message (or, if you want to write an extension,
> just
> use the extra-field for that).
>
> > How to record changesets done by several people?
>
> You can just add them all as author (-u "Author 1, Author 2, …").


Nice hack.


>  > How to make onsite merges with reviewer names on BitBucket?
>
> That is an issue of Bitbucket, which is a separate service.
>
> Normally you just pull to your computer, review, merge, then push.
>
> > There should be a native version control support for
> > distributed reviews.
>
> Are there more features you’d like to have than the ones you already asked
> about?
>

Hmm.. Not sure. A pony?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mercurial-scm.org/pipermail/mercurial/attachments/20121218/343980ff/attachment-0002.html>


More information about the Mercurial mailing list