Subject: Re: [PATCH] doc: clarify push.default=simple in triangular workflows

From: Junio C Hamano <[email-masked]>
Date: Fri, 22 May 2026 17:49:24 +0900

"Ivan Baluta via GitGitGadget" <[email-masked]> writes:

> From: ivanbaluta <[email-masked]>

Just noticing, but don't you want to spell your name just like you
spell it in your e-mails?  I.e., 

    From: Ivan Baluta <[email-masked]>

Use the same name for your sign-off below.

> The documentation for 'simple' push mode currently focuses on the
> centralized workflow. However, the implementation in builtin/push.c
> falls back to 'current' behavior when pushing to a remote different
> from the upstream (a triangular workflow).

It is not just implementation, but that is how it was designed to
do.

Whether centralized or triangular, "simple" works as a restricted
form as "current", with the same restriction.  That is, both
"current" and "simple" push out only the current branch to a single
destination that is configured, and "simple" insists that the
destination has the same name as the local branch.

So I am not sure if this three-line patch adds much value.

I agree that it _is_ confusing that the current text singles out the
centralized workflow when describing "simple".  But the remedy may
not be to add "what happens in triangular, then?", but it may be to
clarify that the need to configure the push destination whether your
push destination is the same as or different from your upstream, no?

Something along this line, perhaps?

    `simple`;;
    push the current branch with the same name on the remote.
    +
    This mode requires that the remote repository to be pushed to is
    known.  When pushing back to the same remote you pull from, the
    current branch must also have an upstream tracking branch with the
    same name.
    +
    This mode is the default since Git 2.0, and is the safest option
    suited for beginners.

That way, the description would be more self standing and the
readers hopefully do not have to refer to another mode (`current`)
to understand what happens, no?