Skip to content

Fix 'pull --rebase --recurse-submodules' when local and upstream branches have no fork-point

Philippe Blain via GitGitGadget git 1 version New

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest4 patches 0 repliesNew

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/4pull --rebase: compute rebase arguments in separate functionbuiltin/pull.c+35 -110 replies
2/4t5572: add notes on a peculiar testt/t5572-pull-submodule.sh+15 -00 replies
3/4t5572: describe '--rebase' tests a little moret/t5572-pull-submodule.sh+10 -20 replies
4/4pull: check for local submodule modifications with the right rangebuiltin/pull.c t/t5572-pull-submodule.sh+30 -10 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

Cover letter [PATCH 0/4] Fix 'pull --rebase --recurse-submodules' when local and upstream branches have no fork-point

This series fixes a bug in 'git pull --rebase --recurse-submodules' when the current branch and the remote-tracking branch we are pulling from have no fork-point (git merge-base --fork-point refs/remotes/<remote>/<upstream> <current-branch> returns empty), resulting in a misleading and fatal error message:

fatal: cannot rebase with locally recorded submodule modifications

This is patch 4/4.

Patch 1/4 is a preparatory refactoring, and patches 2-3 add comments to t5552-pull-submodules to describe 'pull --rebase --recurse-submodules' tests a little better.

Philippe Blain (4):
pull --rebase: compute rebase arguments in separate function
t5572: add notes on a peculiar test
t5572: describe '--rebase' tests a little more
pull: check for local submodule modifications with the right range

 builtin/pull.c            | 48 ++++++++++++++++++++++++---------
 t/t5572-pull-submodule.sh | 56 +++++++++++++++++++++++++++++++++++++--
 2 files changed, 90 insertions(+), 14 deletions(-)

base-commit: e4d83eee9239207622e2b1cc43967da5051c189c
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-789%2Fphil-blain%2Fpull-recurse-no-fork-point-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-789/phil-blain/pull-recurse-no-fork-point-v1
Pull-Request: https://github.com/gitgitgadget/git/pull/789

Signature · 1 line
gitgitgadget