In graft, record both source user/date and commit user/date

Matt Mackall mpm at selenic.com
Thu Oct 22 07:20:28 CDT 2015


On Thu, 2015-10-22 at 00:40 +0300, Noam Yorav-Raphael wrote:
> I must say that it looks very complicated. I'm not interested in
> anything
> fancy, I just want graft to work without me having to think every
> time
> which compromise I prefer now.

Basically, my thought is this will just be configured so that by
default everyone who grafts/amends/rebases will be adding another
header with their own name and date. Crypto and such will be optional.

> On Oct 20, 2015 11:52 PM, "Matt Mackall" <mpm at selenic.com> wrote:
> 
> > On Tue, 2015-10-20 at 23:44 +0300, Noam Yorav-Raphael wrote:
> > > Hello,
> > > 
> > > I hate the --currentuser and --currentdate graft options. Options
> > > in
> > > general are nuisance, but these are the worst, because I never
> > > know
> > > whether
> > > I should use them or not. On the one hand, many times it's more
> > > useful to
> > > know who actually created the change rather than who applied it.
> > > On
> > > the
> > > other hand, the responsibility for the change is mine, and I'm to
> > > be
> > > blamed
> > > for any merge errors, and the actual commit date is usually more
> > > interesting than the original date when trying to figure out when
> > > a
> > > change
> > > was done.
> > > 
> > > I suggest a simple solution: record both, and let the UI show the
> > > user what
> > > he's interested in.
> > > 
> > > I suggest to add two extra attributes: source-user and source-
> > > date.
> > > Then
> > > user and date will record the actual user and date who committed
> > > the
> > > changeset, and --currentuser and --currentdate will do nothing
> > > and
> > > become
> > > obsolete.
> > > 
> > > There's another alternative: add attributes named commit-user and
> > > commit-date, and make user and date record the source metadata. I
> > > don't
> > > like it because I think it's more consistent if user and date
> > > will
> > > always
> > > record who actually committed the changeset and when. I think of
> > > the
> > > metadata of who originally created the diff and when as an extra,
> > > which can
> > > in fact be retrieved from the source changeset. I think the
> > > inconsistency
> > > becomes apparent if you consider the --user option. I have a
> > > shared
> > > machine
> > > at work, and we use the --user option to record who actually made
> > > a
> > > change
> > > (hgrc contains no username). If the user attribute on grafts
> > > records
> > > the
> > > source user, when grafting I'll have to use a --commit-user
> > > option
> > > instead.
> > > I think this shows the inconsistency of this alternative.
> > > 
> > > What do you think?
> > 
> > We'll probably do something like this:
> > 
> > http://markmail.org/message/sdt334wovmcrguwt
> > 
> > ..which will create a complete audit trail.
> > 
> > --
> > Mathematics is the supreme nostalgia of our time.
> > 
> > 
-- 
Mathematics is the supreme nostalgia of our time.



More information about the Mercurial-devel mailing list