[PATCH 0/4] Fix triangular workflows for upstream, simple
- From
Ramkumar Ramachandra <artagnon@gmail.com>
- Date
- Jun 9, 2013, 17:13 UTC
- Message-ID
- <1370798000-2358-1-git-send-email-artagnon@gmail.com>
Junio C Hamano wrote:
Show 7 quoted lines
> It might be a beginning of a change in the right direction (I didn't > check the codeflow), but given that the test that comes after the > one you removed is looking at branch->merge[0] and deciding what to > do, and branch.$name.merge should *never* affect anything when > remote.pushdefault or branch.$name.pushremote is in use while > deciding what is pushed out or if the push is allowed, I do not > think the removal of these five lines alone can possibly "work".
I just spent hours breaking my head thinking about why you said my patch cannot possibly "work". I give up.
The artificial limitation was introduced by you in 135dade, and here's the relevant part of the commit message:
- The current branch does have its remote and upstream branch configured,
but the user said "git push $there", where $there is not the remote
named by "branch.$name.remote". By definition, no branch at repository
$there is set to integrate with the current branch in this case, and
this push is not meant to update any branch at the remote repository
$there.What definition is this, and why does it only apply to upstream/simple? Did you implicitly assume that upstream/simple are only meant to be used in centralized workflows?
Thanks.
Ramkumar Ramachandra (4):
t/push-default: remove redundant test_config lines
push: make upstream, simple work with pushdefault
t/push-default: generalize test_push_{success, commit}
t/push-default: test pushdefault with all modesbuiltin/push.c | 5 ----- t/t5528-push-default.sh | 30 ++++++++++++++++++++++++------ 2 files changed, 24 insertions(+), 11 deletions(-)
-- 1.8.3.247.g485169c