Wireshark-dev: Re: [Wireshark-dev] Git+gerrit status update - 2014-01-14

From: Pascal Quantin <pascal.quantin@xxxxxxxxx>
Date: Tue, 25 Feb 2014 23:02:51 +0100
2014-02-25 22:57 GMT+01:00 Joerg Mayer <jmayer@xxxxxxxxx>:
On Tue, Feb 25, 2014 at 01:48:22PM -0500, Evan Huus wrote:
> On Tue, Feb 25, 2014 at 1:39 PM, Joerg Mayer <jmayer@xxxxxxxxx> wrote:
> > On Tue, Feb 25, 2014 at 10:09:43AM -0800, Gerald Combs wrote:
> >> I haven't found anything obvious in the server logs that would explain
> >> the error, unfortunately.
> >>
> >> Since you were able to add your SSH key, does
> >>
> >> ssh your.username@xxxxxxxxxxxxxxxxxx:29418 gerrit --help
> >
> > I had to use ssh jmayer@xxxxxxxxxxxxxxxxxx -p29418 gerrit --help
> > instead but yes, that works. So it seems that this may indeed be
> > some sort of client side problem.
> >
> >> work correctly? If so you might be able to bypass the web interface
> >> entirely, at least until we fix the problem.
> >>
> >> You can either use 'ssh code.wireshark.org gerrit' directly[1] or the
> >> git-review[2] wrapper. Recent versions of Qt Creator support Gerrit
> >> reviews as well.
> >>
> >> [1] https://code.wireshark.org/review/Documentation/cmd-index.html
> >> [2] https://pypi.python.org/pypi/git-review
> >
> > I have installed git-review (it is a standard package with openSUSE).
> >
> > Once I've finished cloning the repo (somehow it's not my day: git clone
> > is an atomic operation and I'm behind an unstable Wireless connection),
> > how do I proceed? Is there a wiki page that I can follow to set all
> > the required and recommented git variables to use the correct id, push
> > to the right place etc?
>
> There's already a gitreview config file in the repo, so you should
> just be able to run "git review -s" and it will set up everything
> correctly for you.

I just did that, and received the following message during push:
jmayer@egg:~/work/wireshark/git/ui/qt(master)> git push
Counting objects: 37, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (5/5), done.
Writing objects: 100% (5/5), 532 bytes | 0 bytes/s, done.
Total 5 (delta 4), reused 0 (delta 0)
remote: Resolving deltas: 100% (4/4)
remote: Branch refs/heads/master:
remote: You are not allowed to perform this operation.
remote: To push into this reference you need 'Push' rights.
remote: User: jmayer
remote: Please read the documentation and contact an administrator
remote: if you feel the configuration is incorrect
remote: Processing changes: refs: 1, done
To ssh://jmayer@xxxxxxxxxxxxxxxxxx:29418/wireshark
 ! [remote rejected] master -> master (prohibited by Gerrit)
error: failed to push some refs to 'ssh://jmayer@xxxxxxxxxxxxxxxxxx:29418/wireshark'

So I assume that this does not set up the correct push url? If the assumption
is correct, is there a way to change the push url (or alternatively: are there
reasons not to change it)?

I did not use git review myself, so I did not check whether it configures everything correctly or not. But your push command for master branch should be:
git push origin HEAD:refs/for/master

You can configure the default push path with the following command:
 git config --add remote.origin.push HEAD:refs/for/master
and then git push should work automatically

Pascal.