Pushing other people's patches to gerrit

classic Classic list List threaded Threaded
14 messages Options
Jan Holesovsky-4 Jan Holesovsky-4
Reply | Threaded
Open this post in threaded view
|

Pushing other people's patches to gerrit

Hi,

I've heard already from 2 people that it is not possible for them to
push other people's patches to gerrit; they get an error like:

remote: ERROR:  In commit XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
remote: ERROR:  author email address [hidden email]
remote: ERROR:  does not match your user account.

I wonder - what setting needs to be set for them so that they can push
other people patches?  Or do they need to get the full push rights?

And in general - what's the reason for such a restriction?  Why somebody
cannot eg. backport somebody else's patch to a stable branch, even if
they don't have full commit access yet (?) - the patch will be reviewed
anyway...

Thank you,
Kendy

_______________________________________________
LibreOffice mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/libreoffice
jan iversen jan iversen
Reply | Threaded
Open this post in threaded view
|

Re: Pushing other people's patches to gerrit


> I've heard already from 2 people that it is not possible for them to
> push other people's patches to gerrit; they get an error like:
>
> remote: ERROR:  In commit XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
> remote: ERROR:  author email address [hidden email]
> remote: ERROR:  does not match your user account.
>
> I wonder - what setting needs to be set for them so that they can push
> other people patches?  Or do they need to get the full push rights?
That would call for a third name field in git, right now Git knows Committer and Author…what you want is something like Committer, Author, Pusher (sorry for the name).

> And in general - what's the reason for such a restriction?  Why somebody
> cannot eg. backport somebody else's patch to a stable branch, even if
> they don't have full commit access yet (?) - the patch will be reviewed
> anyway…
They cannot cherrypick in gerrit, but they can cherrypick to their local system, build and test the patch (which we assume they do) and then submit the patch for the new branch. Remark in that process the original author is lost, again because git only has committer/author.

I have done the submit for quite a number of contributors (f.x. Heiko), all they need is to ask and it will be done

rgds
jan I.

_______________________________________________
LibreOffice mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/libreoffice
Bjoern Michaelsen Bjoern Michaelsen
Reply | Threaded
Open this post in threaded view
|

Re: Pushing other people's patches to gerrit

Hi,

On Tue, Jan 03, 2017 at 06:14:10PM +0100, Jan Iversen wrote:
> That would call for a third name field in git, right now Git knows Committer
> and Author…what you want is something like Committer, Author, Pusher (sorry
> for the name).

Of course, there is no such thing as a "Pusher". There is the author of the
work and the person that applies it to a specific state of the code
(committer).

> They cannot cherrypick in gerrit, but they can cherrypick to their local
> system, build and test the patch (which we assume they do) and then submit
> the patch for the new branch. Remark in that process the original author is
> lost, again because git only has committer/author.

This can be very misleading: Under no circumstances anyone should take actions
that change the authorship of changes. This should be clear for the future
and is and was the case in the present and past.

Best,

Bjoern
_______________________________________________
LibreOffice mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/libreoffice
Markus Mohrhard Markus Mohrhard
Reply | Threaded
Open this post in threaded view
|

Re: Pushing other people's patches to gerrit

In reply to this post by Jan Holesovsky-4
Hey Kendy,

On Tue, Jan 3, 2017 at 10:27 AM, Jan Holesovsky <[hidden email]> wrote:
Hi,

I've heard already from 2 people that it is not possible for them to
push other people's patches to gerrit; they get an error like:

remote: ERROR:  In commit XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
remote: ERROR:  author email address [hidden email]
remote: ERROR:  does not match your user account.

I wonder - what setting needs to be set for them so that they can push
other people patches?  Or do they need to get the full push rights?

And in general - what's the reason for such a restriction?  Why somebody
cannot eg. backport somebody else's patch to a stable branch, even if
they don't have full commit access yet (?) - the patch will be reviewed
anyway...



That should be the "Forge Author Identity" part in https://gerrit.libreoffice.org/#/admin/projects/Dev-ACL-Template,access


At least for me the interpretation was always that it simplifies the lives of reviewers. If a patch has been committed by someone who is not the author and I can not be 100% sure that the license is correct I need to spend a lot of time researching the license situation myself. Additionally I'm often not very thrilled when people who have not understood a patch are back porting them to a stable branch. IMHO backporting should always either be done by someone who has the experience in that part of the code, has written the patch or has reviewed the patch for master.

Regards,
Markus

_______________________________________________
LibreOffice mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/libreoffice
Bjoern Michaelsen Bjoern Michaelsen
Reply | Threaded
Open this post in threaded view
|

Re: Pushing other people's patches to gerrit

In reply to this post by Jan Holesovsky-4
Hi,

On Tue, Jan 03, 2017 at 10:27:30AM +0100, Jan Holesovsky wrote:
> I wonder - what setting needs to be set for them so that they can push
> other people patches?  Or do they need to get the full push rights?

They need the right to "forge commits" as that is what that is.

> And in general - what's the reason for such a restriction?

There are two kinds of roles with a patch: the author of the work and the
person applying it to an existing codebase (committer). To be involved with
development, one should aim to become one of the two -- there is no sensible
third role.

In the case of backporting, there even might have been good reasons the
original author did not do it. Backporting a patch without checking back with
the author is at least very, very impolite IMHO. _Iff_ that is done, its
essentially a promise to take over any follow-up business (possible regressions
etc.) from that backport. To keep that promise, one needs to be a committer.

If cherrypicking was a free lunch, we could release from master and spare us
the whole hassle with branches and tags. It isnt.

Best,

Bjoern
_______________________________________________
LibreOffice mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/libreoffice
Heiko Tietze-2 Heiko Tietze-2
Reply | Threaded
Open this post in threaded view
|

Re: Pushing other people's patches to gerrit

2017-01-04 3:28 GMT+01:00 Bjoern Michaelsen <[hidden email]>:
> If cherrypicking was a free lunch, we could release from master and spare us
> the whole hassle with branches and tags. It isnt.

As for me I cannot change the author of a patch (git --amend --author)
but cherrypick in gerrit (i.e. apply a patch to master). /worksforme
_______________________________________________
LibreOffice mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/libreoffice
Jan Holesovsky-4 Jan Holesovsky-4
Reply | Threaded
Open this post in threaded view
|

Re: Pushing other people's patches to gerrit

In reply to this post by Markus Mohrhard
Hi Moggi,

Markus Mohrhard píše v St 04. 01. 2017 v 02:47 +0100:

>        
>         And in general - what's the reason for such a restriction?
>         Why somebody
>         cannot eg. backport somebody else's patch to a stable branch,
>         even if
>         they don't have full commit access yet (?) - the patch will be
>         reviewed
>         anyway...
>
> That should be the "Forge Author Identity" part in
> https://gerrit.libreoffice.org/#/admin/projects/Dev-ACL-Template,access
>
> At least for me the interpretation was always that it simplifies the
> lives of reviewers. If a patch has been committed by someone who is
> not the author and I can not be 100% sure that the license is correct
> I need to spend a lot of time researching the license situation
> myself.

I see, thanks for the explanation!

Is it possible to set this case-by-case?  If yes, I'd like to have this
for Heiko - he's pushed stuff for other people to gerrit in the past
with his name / mail in Author: (instead of the real author) which is
not correct; and yet his role is to help people with getting stuff
merged if they cannot do it themselves yet.

For Aron, I think best if he gets full commit access at some stage; I'll
ask for that at the ESC.

> Additionally I'm often not very thrilled when people who have not
> understood a patch are back porting them to a stable branch. IMHO
> backporting should always either be done by someone who has the
> experience in that part of the code, has written the patch or has
> reviewed the patch for master.

Sure; but backporting is just one of the use cases, and Aron has hit it
it in a distro branch - where the distro maintainers are responsible for
that & have more freedom I believe.

But now I understand the root of the concern here, and agree we
shouldn't change this setting overall :-)

Thank you,
Kendy



_______________________________________________
LibreOffice mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/libreoffice
Eike Rathke-2 Eike Rathke-2
Reply | Threaded
Open this post in threaded view
|

Re: Pushing other people's patches to gerrit

In reply to this post by Heiko Tietze-2
Hi Heiko,

On Wednesday, 2017-01-04 08:47:45 +0100, Heiko Tietze wrote:

> As for me I cannot change the author of a patch (git --amend --author)

I doubt that. This should work:

git commit --amend --author='Full Name <[hidden email]>'

  Eike

--
LibreOffice Calc developer. Number formatter stricken i18n transpositionizer.
GPG key "ID" 0x65632D3A - 2265 D7F3 A7B0 95CC 3918  630B 6A6C D5B7 6563 2D3A
Better use 64-bit 0x6A6CD5B765632D3A here is why: https://evil32.com/
Care about Free Software, support the FSFE https://fsfe.org/support/?erack

_______________________________________________
LibreOffice mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/libreoffice

signature.asc (836 bytes) Download Attachment
Heiko Tietze-2 Heiko Tietze-2
Reply | Threaded
Open this post in threaded view
|

Re: Pushing other people's patches to gerrit

Even with 'commit' it doesn't :-)

2017-01-04 15:48 GMT+01:00 Eike Rathke <[hidden email]>:

> Hi Heiko,
>
> On Wednesday, 2017-01-04 08:47:45 +0100, Heiko Tietze wrote:
>
>> As for me I cannot change the author of a patch (git --amend --author)
>
> I doubt that. This should work:
>
> git commit --amend --author='Full Name <[hidden email]>'
>
>   Eike
>
> --
> LibreOffice Calc developer. Number formatter stricken i18n transpositionizer.
> GPG key "ID" 0x65632D3A - 2265 D7F3 A7B0 95CC 3918  630B 6A6C D5B7 6563 2D3A
> Better use 64-bit 0x6A6CD5B765632D3A here is why: https://evil32.com/
> Care about Free Software, support the FSFE https://fsfe.org/support/?erack
_______________________________________________
LibreOffice mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/libreoffice
Jan Holesovsky-4 Jan Holesovsky-4
Reply | Threaded
Open this post in threaded view
|

Re: Pushing other people's patches to gerrit

Hi Heiko,

Heiko Tietze píše v St 04. 01. 2017 v 15:53 +0100:

> > As for me I cannot change the author of a patch (git --amend
--author)
> >
> > I doubt that. This should work:
> >
> > git commit --amend --author='Full Name <[hidden email]>'
> Even with 'commit' it doesn't :-)

What "it does not work" mean please? ;-)  What's the error message you
get?

Thank you,
Kendy

_______________________________________________
LibreOffice mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/libreoffice
Eike Rathke-2 Eike Rathke-2
Reply | Threaded
Open this post in threaded view
|

Re: Pushing other people's patches to gerrit

In reply to this post by Heiko Tietze-2
Hi Heiko,

On Wednesday, 2017-01-04 15:53:21 +0100, Heiko Tietze wrote:

> Even with 'commit' it doesn't :-)

And what exactly doesn't work?

After

git commit --amend --author='Full Name <[hidden email]>'
git log HEAD^..

the Author field is shown as ...?

  Eike

--
LibreOffice Calc developer. Number formatter stricken i18n transpositionizer.
GPG key "ID" 0x65632D3A - 2265 D7F3 A7B0 95CC 3918  630B 6A6C D5B7 6563 2D3A
Better use 64-bit 0x6A6CD5B765632D3A here is why: https://evil32.com/
Care about Free Software, support the FSFE https://fsfe.org/support/?erack

_______________________________________________
LibreOffice mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/libreoffice

signature.asc (836 bytes) Download Attachment
Heiko Tietze-2 Heiko Tietze-2
Reply | Threaded
Open this post in threaded view
|

Re: Pushing other people's patches to gerrit

Tested this yesterday evening and git commit --amend (Murphy-)worked. IIRC, I committed a patch and tried to change the author later. Don't remember what the exact problem was but in the end only JanIV was able to help me.

On 01/04/2017 04:17 PM, Eike Rathke wrote:

> Hi Heiko,
>
> On Wednesday, 2017-01-04 15:53:21 +0100, Heiko Tietze wrote:
>
>> Even with 'commit' it doesn't :-)
>
> And what exactly doesn't work?
>
> After
>
> git commit --amend --author='Full Name <[hidden email]>'
> git log HEAD^..
>
> the Author field is shown as ...?
>
>   Eike
>
--
Dr. Heiko Tietze
UX Designer
Tel. +49 (0)179/1268509


_______________________________________________
LibreOffice mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/libreoffice

signature.asc (499 bytes) Download Attachment
jan iversen jan iversen
Reply | Threaded
Open this post in threaded view
|

Re: Pushing other people's patches to gerrit


> On 5 Jan 2017, at 11:30, Heiko Tietze <[hidden email]> wrote:
>
> Tested this yesterday evening and git commit --amend (Murphy-)worked. IIRC, I committed a patch and tried to change the author later. Don't remember what the exact problem was but in the end only JanIV was able to help me.

It works differently between people who have commit access and others.

Whenever you submit a patch to gerrit it will default have committer=heiko and author=heiko. You can overwrite author, but that will only work temporarily in  gerrit, because when I later merge it, it will have committer=jani, author=heiko in the git log. Because of this I always cherry pick such patches to my local repo, do a local commit with the correct author and submit it, then merge it in gerrit.

I do not understand the reason why you submit patches on behalf of others. We want them to be part of the community, and that that they submit their own patches (with your or my guidance). You should mentor them to contribute, not do their work.

Just for information, I get often asked to submit a patch from new people, but I have so far not submitted any patches behalf of others. When e.g. a contributor makes an attachment to BZ, I write a comment and politely ask for a gerrit patch. Until now I have only had 1 negative response with this way.

It is important we learn contributors to contribute ! Have them submitting a patch, that needs correction, then correct it, is far better, because they learn to help themselves.


rgds
jan I.


_______________________________________________
LibreOffice mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/libreoffice
Jan Holesovsky-4 Jan Holesovsky-4
Reply | Threaded
Open this post in threaded view
|

Re: Pushing other people's patches to gerrit

Hi Jan,

Jan Iversen píše v Čt 05. 01. 2017 v 11:50 +0100:

> > Tested this yesterday evening and git commit --amend
> > (Murphy-)worked. IIRC, I committed a patch and tried to change the
> > author later. Don't remember what the exact problem was but in the
>> end only JanIV was able to help me.

Yeah, so it must have been the gerrit error message as I thought &
proposed to change the setting for Heiko in the other mail.

> I do not understand the reason why you submit patches on behalf of
> others. We want them to be part of the community, and that that they
> submit their own patches (with your or my guidance). You should mentor
> them to contribute, not do their work.

Please keep in mind that Heiko deals with much less technical people, so
from my point of view it is perfectly OK to go an extra mile & push the
1st patch for them when they eg. provide the design work itself via
bugzilla or the mailing list.  Think eg. of the design contest for
presentation templates we had some time ago, or similar cases.

Of course - this must not become an ongoing burden :-) - their 2nd patch
should go via gerrit.

Let's discuss at the ESC today; I'll accept if people think different or
it's not possible to set the setting just for Heiko of course.

> Just for information, I get often asked to submit a patch from new
> people, but I have so far not submitted any patches behalf of others.
> When e.g. a contributor makes an attachment to BZ, I write a comment
> and politely ask for a gerrit patch. Until now I have only had 1
> negative response with this way.

That's great to hear, and definitely the right way to handle the
developers of course.

All the best,
Kendy

_______________________________________________
LibreOffice mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/libreoffice