Safely resolve a merge conflict in GitHub Desktop

What to do first

Safely resolve a merge conflict in GitHub Desktop by following the official decision path while preserving user data.

This is a general troubleshooting guide, not an announcement of a current outage.

Affected products and symptoms

Product
GitHub Desktop
Versions and conditions
GitHub Desktop for Windows and macOS

Symptoms

  • GitHub Desktop lists merge conflicts
  • Continue merge is unavailable

Causes and conditions

Resolve each file in an editor, remove conflict markers, validate, and continue the merge.

Before you start

  • Before changes, record and preserve current branch, merge source, uncommitted diff, and conflict list.
  • Change one item at a time and record the original symptom after each stage.

Precautions

  • Do not bulk-delete unrelated settings or data.
  • Exclude personal data and credentials; share only the necessary parts of current branch, merge source, uncommitted diff, and conflict list.
GitHub Desktop troubleshooting sequence: Inspect state; Choose content in an editor; Validate content; Complete the merge
Procedure overview created by FaultNote. Read the precautions and full instructions before changing settings. Read the full steps

Step-by-step instructions

  1. 01

    Inspect state

    #

    Confirm Current branch, the merged branch, conflict list, and whether unrelated uncommitted work is present.

    Make a separate repository copy first if state is unclear.

    Current branch is the merge destination. Read branch names and history before starting so the direction is correct.

  2. 02

    Choose content in an editor

    #

    Open each file in VS Code or another editor and choose Current, Incoming, both, or a manual result.

    Remove every <<<<<<<, =======, and >>>>>>> marker from the final content.

    VS Code Accept Both concatenates content. Duplicate functions or keys still require semantic editing after marker removal.

  3. 03

    Validate content

    #

    Save, then run syntax checks and relevant tests. Check source files as well as generated artifacts.

    For binary conflicts, choose the correct whole version instead of text merging.

    A resolved checkbox does not prove valid syntax. Run project tests, lint, and build.

  4. 04

    Complete the merge

    #

    Return to Desktop, ensure every conflict is resolved, and select Continue merge.

    Review history and the complete diff for accidental deletions before pushing.

    Continue merge creates local history. Review History and the diff before Push so mistakes are not published.

Check the result

  • after tests pass, inspect merge parents and Files changed in History
  • Check adjacent basic functions for side effects from the change.

If the problem continues

  • abort an unclear merge, preserve edits, and rerun with a reviewer
  • When continuing with a workaround, preserve original files or account data separately.

Scope of this guide

Troubleshooting guide — Safely resolve a merge conflict in GitHub Desktop by following the official decision path while preserving user data.

Frequently asked questions

Can I abort?

Use Abort merge before completion, but preserve edits made since the merge began.

Is accepting both always safe?

No. It can duplicate or contradict content, so inspect the final file.

Official sources and dates

Source publication or resolution date: Not specified. Sources checked: 2026-09-05. The check date is not the date the problem first occurred. Interface labels can vary between versions and display languages.

Related troubleshooting guides

← Search English guides