Re: [PATCH] t5531: further "matching" fixups
- From
Jeff King <peff@peff.net>
- Date
- Jan 11, 2014, 04:22 UTC
- Message-ID
- <20140111042246.GA19556@sigill.intra.peff.net>
- In-Reply-To
- <xmqqzjn376n0.fsf@gitster.dls.corp.google.com>
On Fri, Jan 10, 2014 at 03:34:59PM -0800, Junio C Hamano wrote:
Show 7 quoted lines
> Jeff King <peff@peff.net> writes: > > > ... but the > > failing test is actually somewhat broken in 'next' already. > > Hmph, in what way? I haven't seen t5531 breakage on 'next', with or > without your series...
The test still passes, but it is not testing the right thing anymore.
On 'next', run t5531. Test 6 is "push fails when commit on multiple branches if one branch has no remote" and ends with:
test_must_fail git push --recurse-submodules=check ../pub.git
But the output ends with:
warning: push.default is unset; its implicit value has changed in Git 2.0 from 'matching' to 'simple'. To squelch this message [...]
fatal: The current branch branch2 has no upstream branch. To push the current branch and set the remote as upstream, use
git push --set-upstream ../pub.git branch2
When not merged with b2ed944 (push: switch default from "matching" to "simple"), or with my patch to set push.default=matching explicitly, the output is:
The following submodule paths contain changes that can
not be found on any remote:
gar/bagePlease try
git push --recurse-submodules=on-demand
or cd to the path and use
git push
to push them to a remote.
fatal: Aborting.
which is what the test is actually trying to check. So the push fails, as we expect, but not for the right reason.
My other series for @{publish} had a bug that caused the push to succeed. So that series was buggy (and I posted the fix already), but we only noticed it because this test was not working (it should not care about upstream/triangular config at all, but it accidentally did).
Does that clarify the situation?
-Peff