Skip to content

fix: disable rebase merge strategy org-wide - #211

Open
marcusburghardt wants to merge 1 commit into
complytime:mainfrom
marcusburghardt:fix/disable-rebase-merge
Open

fix: disable rebase merge strategy org-wide#211
marcusburghardt wants to merge 1 commit into
complytime:mainfrom
marcusburghardt:fix/disable-rebase-merge

Conversation

@marcusburghardt

@marcusburghardt marcusburghardt commented Sep 3, 2026

Copy link
Copy Markdown
Member

Summary

Disable the rebase merge strategy across all managed repositories via safe-settings.

Rationale

Rebase merge has two drawbacks compared to merge commit and squash:

  1. Breaks Signed-off-by verification -- rebase merge replays commits with
    new SHAs, invalidating the original signatures.

  2. No PR linkage in git history -- unlike merge commit (Merge pull request #N)
    or squash (PR # in commit message), rebase merge creates no connection between
    the commits and the originating PR in git log. The link is only visible in
    the GitHub UI.

The remaining strategies cover all use cases:

  • Merge commit: preserves individual PR commits with a clear PR link in history.
  • Squash merge: collapses commits for single-commit or trivial PRs.

Evidence

Audit of recent merge activity across code repos:

Repo Primary merge method
complyctl Rebase merge (some cases before formalizing in Style Guide)
org-infra Squash merge
complypack Merge commit
complytime-collector-components Merge commit
complytime-policies Merge commit
complytime-providers Merge commit

Reference: STYLE_GUIDE.md § Pull Requests

Rebase merge rewrites commit SHAs, which breaks Signed-off-by
trailer verification, and does not create a merge commit linking
the individual commits to the originating PR. This makes git log
and git bisect harder to navigate compared to merge commits.

Squash merge and merge commit remain enabled:
- Merge commit: preserves individual PR commits and creates a
  clear link to the PR in git history.
- Squash merge: useful for single-commit or trivial PRs.

Assisted-by: OpenCode (claude-opus-4-6)
Signed-off-by: Marcus Burghardt <maburgha@redhat.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants