Point the landing recipe at the rebase hazard it can create
Some checks are pending
build-gate / build (push) Waiting to run
Some checks are pending
build-gate / build (push) Waiting to run
Landing by rebase leaves the old branch tip orphaned, and reconciling it with a -s ours merge is how this branch got one. The rule against rebasing over such a merge is further down the file; the recipe that creates the condition now says so where the work happens.
This commit is contained in:
parent
0c08dc092c
commit
28b0e505b7
1 changed files with 8 additions and 0 deletions
|
|
@ -28,6 +28,14 @@ export FORGEJO_PASS_ENTRY=vivarium/forgejo-certified-sandbox GIT_TERMINAL_PROMPT
|
|||
unset SSH_ASKPASS DISPLAY
|
||||
|
||||
git fetch origin && git rebase origin/main # you resolve every conflict, not main
|
||||
# ...UNLESS this branch has ever recorded a
|
||||
# `-s ours` merge — then MERGE, never rebase.
|
||||
# See "Never rebase a branch that has ever
|
||||
# recorded a `-s ours` merge" below; landing by
|
||||
# rebase and reconciling the old tip with
|
||||
# `-s ours` is what puts one there, so the very
|
||||
# next landing on the same branch is the one
|
||||
# this catches. `git log --merges` tells you.
|
||||
|
||||
if main-capture capture --wait; then # --wait retries with backoff while held;
|
||||
# release ONLY a lock you actually took
|
||||
|
|
|
|||
Loading…
Reference in a new issue