Damien Robert [off-list ref] writes:
quoted
+ case PUSH_DEFAULT_MATCHING:
+ case PUSH_DEFAULT_CURRENT:
+ return branch->refname;
Here I follow the logic of branch_get_push1, but the case of
push.default=matching is not quite correct, because we never check
that we have a matching remote branch. On the other hand we cannot check
this until we contact the remote, so I don't know how we could get around
that.
Quite honestly, I do not think that is a problem that needs to be
solved; there is no workable definition.