Distinguish between a changeset author and the user who actually pushed a change

Iris Clark iris.clark at oracle.com
Tue Jan 26 02:59:51 UTC 2016


Hi, Volker.

I'm not a Mercurial expert, but I don't believe that it is
possible to identify the pusher of a changeset from the 
repository itself.

A repository's changelog is just a collection of changesets.
When a changeset is committed, the hash is computed based 
on the actual code change and any identifying information 
such as the comment, author, date, and parent(s?).  The 
pusher isn't known until push occurs, which may be an 
arbitrary time after the commit.  The server can't add the 
pusher information to the changeset since doing so would 
alter the hash.

It looks like hgupdater (the tool which updates the bug 
system) independently logs the pusher. 

Thanks,
iris

-----Original Message-----
From: Volker Simonis [mailto:volker.simonis at gmail.com] 
Sent: Monday, January 25, 2016 10:59 AM
To: hg-tools-dev
Subject: Distinguish between a changeset author and the user who actually pushed a change

Hi,

is it possible to distinguish the actual user who pushed a change from the author of that change (i.e. the one who is mentioned in the 'user'
field of the change set).

For example for the following change:

https://bugs.openjdk.java.net/browse/JDK-8146979

the bug system correctly reports:

URL: http://hg.openjdk.java.net/jdk8u/jdk8u-dev/hotspot/rev/c649dde41041
User: dholmes
Date: 2016-01-14 03:18:30 +0000

as this change was pushed by the user 'dholmes'. But looking at the actual changeset
(http://hg.openjdk.java.net/jdk8u/jdk8u-dev/hotspot/rev/c649dde41041)
reports:

user:        simonis
date:        Wed Jan 13 20:47:17 2016 -0500

which is also correct, because the user 'simonis' is the actual author of that change.

Is it possible to get both these users (i.e. the user who pushed and the user who authored the change) from a plain Mercurial clone of the OpenJDK?

Thank you and best regards,
Volker


More information about the hg-tools-dev mailing list