Subject: Re: [PATCH 8/9] pull: update docs & code for option compatibility with rebasing

From: Junio C Hamano <[email-masked]>
Date: Tue, 20 Jul 2021 17:17:19 -0700

"Elijah Newren via GitGitGadget" <[email-masked]> writes:

> From: Elijah Newren <[email-masked]>
>
> git-pull.txt includes merge-options.txt, which is written assuming
> merges will happen.  git-pull has allowed rebases for many years; update
> the documentation to reflect that.

Yes, as I might have said elsewhere recently, "pull --rebase" has
been afterthought and the way how it interacts with many niche
"features" of "git pull" has never been designed but started with
whatever the code happened to do and then fixed/tweaked as people
found it suboptimal.  Hopefully with this series we are covering
these interactions and whipping them into a much better shape with
coherent semantics.

> diff --git a/Documentation/git-pull.txt b/Documentation/git-pull.txt
> index cad3f6bfcee..6e6e95a7595 100644
> --- a/Documentation/git-pull.txt
> +++ b/Documentation/git-pull.txt
> @@ -125,6 +125,8 @@ When false, merge the current branch into the upstream branch.
>  +
>  When `interactive`, enable the interactive mode of rebase.
>  +
> +Note that `--ff-only` takes precedence over any `--rebase` flag.
> ++

"`ff-only` overrides any `--rebase` flag"?

> @@ -58,6 +61,10 @@ could instead be resolved as a fast-forward.
>  +
>  With `--ff-only`, resolve the merge as a fast-forward when possible.
>  When not possible, refuse to merge and exit with a non-zero status.

This part may want to become conditional with git-pull[] to use a
verb different than "merge"?

> +ifdef::git-pull[]
> ++
> +Note that `--no-ff` and `--ff` are ignored when rebasing is requested.
> +endif::git-pull[]

OK.