Thread (2 messages) 2 messages, 2 authors, 2016-06-15

Re: push rejected (non-fast-forward)

From: Junio C Hamano <hidden>
Date: 2016-06-15 23:03:06

debugging data [off-list ref] writes:
$ git push origin so-much-foo
To git@github.com:user-two/project.git
 ! [rejected]        so-much-foo -> so-much-foo (non-fast-forward)
error: failed to push some refs to 'git@github.com:user-two/project.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.


It doesn't look like the tip is behind though:


/project$ git log
commit dd240b6ba15d27d074726e9b1b0e665e3507a2fd
Author: User Two [off-list ref]
...
Date:   Mon Nov 24 22:43:08 2014 +0000

    file-one.txt with contents "file one"
I do not think anybody can say "It doesn't look like the tip is
behind" by looking only at the above.  I am assuming that you are on
your "so-much-foo" branch, but that shows only your state.  You are
not inspecting what is actually on the remote branch you are pushing
to, so...

After the failed "git push origin so-much-foo", try "git fetch
origin so-much-foo", which will make the tip of the so-much-foo
branch over there temporarily available in your FETCH_HEAD.  And
then do something like:

    $ git show-branch FETCH_HEAD so-much-foo

and see how they have diverged.  If you want to merge your work with
the updated origin, you can do

    $ git merge FETCH_HEAD

after that, or follow the hint given by the failed push, i.e.
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
and do

    $ git pull origin so-much-foo

(which by the way can be done without the "git fetch origin ..."
and "git show-branch ..." steps above).
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help