From: "Dan Fabulich via GitGitGadget" <gitgitgadget@gmail.com>
To: git@vger.kernel.org
Cc: Dan Fabulich <dan@fabulich.com>, Dan Fabulich <dan@fabulich.com>
Subject: [PATCH] doc: clarify difference between `push.default` `simple` and `current`
Date: Wed, 23 Jul 2025 23:00:24 +0000 [thread overview]
Message-ID: <pull.1944.git.1753311625075.gitgitgadget@gmail.com> (raw)
From: Dan Fabulich <dan@fabulich.com>
The documentation made `simple` and `current` sound identical. The
difference is that `simple` strictly checks that the upstream tracking
branch's name matches the current branch's name.
Signed-off-by: Dan Fabulich <dan@fabulich.com>
---
doc: clarify difference between push.default simple and current
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-1944%2Fdfabulich%2Fgit-config-simple-doc-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-1944/dfabulich/git-config-simple-doc-v1
Pull-Request: https://github.com/gitgitgadget/git/pull/1944
Documentation/config/push.adoc | 16 +++++++++-------
1 file changed, 9 insertions(+), 7 deletions(-)
diff --git a/Documentation/config/push.adoc b/Documentation/config/push.adoc
index 0acbbea18a3..3e03cb31606 100644
--- a/Documentation/config/push.adoc
+++ b/Documentation/config/push.adoc
@@ -15,7 +15,7 @@ push.default::
Different values are well-suited for
specific workflows; for instance, in a purely central workflow
(i.e. the fetch source is equal to the push destination),
- `upstream` is probably what you want. Possible values are:
+ `simple` is probably what you want. Possible values are:
+
--
@@ -23,8 +23,8 @@ push.default::
given. This is primarily meant for people who want to
avoid mistakes by always being explicit.
-* `current` - push the current branch to update a branch with the same
- name on the receiving end. Works in both central and non-central
+* `current` - push the current branch to update the branch with the same
+ name on the remote. Works in both central and non-central
workflows.
* `upstream` - push the current branch back to the branch whose
@@ -35,11 +35,13 @@ push.default::
* `tracking` - This is a deprecated synonym for `upstream`.
-* `simple` - push the current branch with the same name on the remote.
+* `simple` - push the current branch to its upstream tracking branch,
+ but only if the upstream tracking branch has the same name as the
+ current branch. (`simple` will fail with an error if the upstream
+ tracking branch's name doesn't match the current branch's name.)
+
-If you are working on a centralized workflow (pushing to the same repository you
-pull from, which is typically `origin`), then you need to configure an upstream
-branch with the same name.
+`simple` will also fail if the current branch doesn't have an upstream
+tracking branch configured, unless `push.autoSetupRemote` is enabled.
+
This mode is the default since Git 2.0, and is the safest option suited for
beginners.
base-commit: 3f2a94875d2f41fe4758a439f68d8b73cfb19d0f
--
gitgitgadget
next reply other threads:[~2025-07-23 23:00 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-07-23 23:00 Dan Fabulich via GitGitGadget [this message]
2025-07-23 23:36 ` [PATCH] doc: clarify difference between `push.default` `simple` and `current` Junio C Hamano
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=pull.1944.git.1753311625075.gitgitgadget@gmail.com \
--to=gitgitgadget@gmail.com \
--cc=dan@fabulich.com \
--cc=git@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).