[openstack-dev] Issues with "git review" for a dependent commit

Jeremy Stanley fungi at yuggoth.org
Tue Jul 2 23:23:20 UTC 2013

On 2013-07-02 21:05:21 +0000 (+0000), Kyle Mestery (kmestery) wrote:
> remote: New Changes:
> remote:   https://review.openstack.org/35384
> remote: 
> To ssh://mestery@review.openstack.org:29418/openstack/quantum.git
>  ! [remote rejected] HEAD -> refs/publish/master/bp/ml2-vxlan (no changes made)
> error: failed to push some refs to 'ssh://mestery@review.openstack.org:29418/openstack/quantum.git'
> In addition, my commit seen at the review URL above does not show
> the dependancy. Any ideas now?

Based on your description of what transpired, it sounds like you
also rebased 33297 (the change on which your 35384 change was
supposed to depend), but it was rejected with the above error while
not being the same actual commit which Gerrit had. 35384 claims its
parent commit is 91e0850, which is not a gitsha Gerrit knows for
33297 (latest patchset for it is 4421cc1).

I believe, but would need to test to confirm, that Aaron's mentioned
the other piece of this puzzle and the "no rebase" -R flag is
incompatible with attempting to push multiple changes which have
been updated. It used to be the case that git-review always tried to
rebase unless you used -R, but with more recent releases it will
avoid rebasing except when absolutely necessary. I pretty much never
use -R at this point.

Of course now attempting to re-submit that top patch probably isn't
going to work anyway without making some minor change to it, since
Gerrit will see that it hasn't changed. I tried downloading 35384
and then rewinding with 'git checkout 91e0850' and resubmitting that
via git review, but it seems Gerrit still sees that as the same as
4421cc1 and refuses it. Instead I retrieved and stacked them as they
stand now with...

    git review -d 33297
    git review -x 35384
    git review

...and that seems to have worked...

    fungi at hastur:~/work/openstack/quantum$ git review
    You are about to submit multiple commits. This is expected if you are submitting a commit that is dependant on one or more in-review commits. Otherwise you should consider squashing your changes into one commit before submitting.
    The outstanding commits are:

    a453866 (HEAD, review/mathieu_rohon/bp/ml2-vxlan) Add VXLAN tunneling support for the ML2 plugin
    4421cc1 Add gre tunneling support for the ML2 plugin

    Do you really want to submit the above commits?
    Type 'yes' to confirm, other to cancel: yes
    remote: Resolving deltas: 100% (12/12)
    remote: Processing changes: updated: 1, done    
    remote: (W) a453866: no files changed, was rebased
    To ssh://fungi@review.openstack.org:29418/openstack/quantum.git
     * [new branch]      HEAD -> refs/publish/master/bp/ml2-vxlan

Hope that helps?
Jeremy Stanley

More information about the OpenStack-dev mailing list