Git Rebase Conflict: Continue, Skip, Abort — Choosing Correctly

A rebase stops at each conflicting commit. The decision per stop: continue with resolved edits, skip (drops that commit's changes), or abort back to where you started. Skipping is the one that silently loses work.

What you'll see

Root causes

Genuine content conflicts while replaying your commits

Each of your commits replays onto the new base; overlapping edits pause the rebase. Normal — resolve, stage, continue. The count in status shows how far through you are.

Fix it

  1. Resolve the conflict like a merge (edit the marked file)
    git status ; # edit conflicted files, keeping the correct side(s)
  2. Stage and continue
    git add <file> && git rebase --continue   # repeats for each conflicted commit
  3. Safely bail out entirely
    git rebase --abort   # returns to pre-rebase state, nothing lost
  4. Skip ONLY when that commit is obsolete/empty
    git rebase --skip   # DROPS that commit's changes — confirm it's already-merged work, not new work

Field note

ORIG_HEAD and reflog have your back: even a botched rebase is recoverable via git reflog — find the pre-rebase state and reset --hard to it. For large divergences: rebase aborts cost nothing. When in doubt mid-rebase, abort and merge instead — a merge conflict resolves once; a rebase resolves once per commit.

Common questions

What does --skip actually drop?

The current commit's changes entirely — it's as if that commit never existed in your branch. Legitimate for already-upstream changes; destructive for real work. Read the diff (git diff) before skipping.

I made a mess mid-rebase. Is my work gone?

Almost never: git reflog records the pre-rebase HEAD. git reset --hard <that-sha> restores you. Verify with git log before panicking — the reflog keeps ~90 days of states.

Ship it right the first time

Our most-documented failures, packaged as ready-to-ship starter kits: Docker, Kubernetes, and Terraform.

Browse the template store →

One-time. Yours to modify. Instant download from the NinjaOps template store.