git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] Add `-u` short option for `git pull`

From
D. Ben Knoble <ben.knoble@gmail.com>
Date
Aug 26, 2025, 13:19 UTC
Message-ID
<CALnO6CC7+JC-EwEDZE1+rbr4ZMPs+dc_9iepb17_9Uda7GSRgw@mail.gmail.com>
In-Reply-To
<pull.2037.git.git.1756147789443.gitgitgadget@gmail.com>

On Mon, Aug 25, 2025 at 2:50 PM Julien Jerphanion via GitGitGadget <gitgitgadget@gmail.com> wrote:

Show 34 quoted lines
>
> From: Julien Jerphanion <git@jjerphan.xyz>
>
> Add the short form `-u` as an alias for `--set-upstream`
> in `git pull`, similarly to `git push` which supports both forms.
>
> This allows users to use `git pull -u <remote> <branch>` as a
> shorter alternative to `git pull --set-upstream <remote> <branch>`.
>
> One test is included to verify that the short form works
> correctly and set the upstream configuration as expected.
>
> Signed-off-by: Julien Jerphanion <git@jjerphan.xyz>
> ---
>     Add -u short option for git pull
>
> Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-2037%2Fjjerphan%2Fpull%2Fset-upstream-short-option-v1
> Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-2037/jjerphan/pull/set-upstream-short-option-v1
> Pull-Request: https://github.com/git/git/pull/2037
>
>  builtin/pull.c          | 2 +-
>  t/t5553-set-upstream.sh | 7 +++++++
>  2 files changed, 8 insertions(+), 1 deletion(-)
>
> diff --git a/builtin/pull.c b/builtin/pull.c
> index 5ebd5296207..e09f2963f78 100644
> --- a/builtin/pull.c
> +++ b/builtin/pull.c
> @@ -254,7 +254,7 @@ static struct option pull_options[] = {
>                 0),
>         OPT_BOOL(0, "show-forced-updates", &opt_show_forced_updates,
>                  N_("check for forced-updates on all updated branches")),
> -       OPT_PASSTHRU(0, "set-upstream", &set_upstream, NULL,
> +       OPT_PASSTHRU('u', "set-upstream", &set_upstream, NULL,
Don't forget to update the docs ;)
Show 26 quoted lines
>                 N_("set upstream for git pull/fetch"),
>                 PARSE_OPT_NOARG),
>
> diff --git a/t/t5553-set-upstream.sh b/t/t5553-set-upstream.sh
> index 70e3376d31b..b4dd7c62ce9 100755
> --- a/t/t5553-set-upstream.sh
> +++ b/t/t5553-set-upstream.sh
> @@ -124,6 +124,13 @@ test_expect_success 'pull --set-upstream upstream main sets branch main but not
>         check_config_missing other
>  '
>
> +test_expect_success 'pull -u upstream main sets branch main but not other' '
> +       clear_config main other &&
> +       git pull --no-rebase -u upstream main &&
> +       check_config main upstream refs/heads/main &&
> +       check_config_missing other
> +'
> +
>  test_expect_success 'pull --set-upstream main:other2 does not set the branch other2' '
>         clear_config other2 &&
>         git pull --no-rebase --set-upstream upstream main:other2 &&
>
> base-commit: 1fa68948c3d76328236cac73d2adf33c905bd8e3
> --
> gitgitgadget
>
-- 
D. Ben Knoble
Previous: Julien Jerphanion via GitGitGadgetNext: Junio C Hamano
Message 2 of 6 in “Add `-u` short option for `git pull`”
  1. Add `-u` short option for `git pull`Julien Jerphanion via GitGitGadget, Aug 25, 2025
  2. D. Ben KnobleAug 26, 2025
  3. Junio C HamanoAug 26, 2025
  4. Julien JerphanionSep 17, 2025
  5. Junio C HamanoSep 18, 2025
  6. Julien JerphanionSep 18, 2025

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.