On Fri, Jan 10, 2014 at 03:34:59PM -0800, Junio C Hamano wrote:

> Jeff King <p...@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/bage

  Please 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
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to