Re: [PATCH] push: Correctly initialize nonfastforward in do_push.
From: Matthieu Moy <hidden>
Date: 2016-06-15 22:47:25
Junio C Hamano [off-list ref] writes:
Matthieu Moy [off-list ref] writes:quoted
Short answer: trust me, without the patch, you get the non-fast forward (and valgrind tells you about conditional jump on uninitialized value), with, you don't ;-).I understand valgrind one; I can trace the codepath with eyeballs without it, and that is why I said it looks correct to begin with.
(in case it wasn't clear, "you" in my message should have been read as "one", no harm intended)
My puzzlement was that the following in the log message did not seem to
reproduce for me:
... where "git push ... nonexisting-branch" was complaining about
non-fast forward.It's comming from an uninitialized variable, so it may have worked just "by chance". For me, it seems to do it reproducibly, with for example: $ mkdir repo $ rm -rf repo/ $ git init repo Initialized empty Git repository in /tmp/repo/.git/ $ cd repo; touch foo; git add .; git commit -m foo > /dev/null $ git push . nonexisting-branch error: src refspec nonexisting-branch does not match any. error: failed to push some refs to '.' To prevent you from losing history, non-fast-forward updates were rejected Merge the remote changes before pushing again. See the 'non-fast forward' section of 'git push --help' for details. -- Matthieu Moy http://www-verimag.imag.fr/~moy/