bugl
bugl
HomeLearnPatternsPathsSearch
HomeLearnPatternsPathsSearch

Loading lesson path

Learn/Git/Git Advanced
Git•Git Advanced

Git Merge Conflicts

Flash cards

Review the key moves

1/4
Core idea

What is the main idea behind Git Merge Conflicts?

Lesson checks

Practice each idea before moving on

Short Mimo-style checks built from this lesson's code, terms, and sequence.

1Quick choice

Which statement best captures the main point of this lesson?

2Fill blank

Complete the missing token from the example code.

___ merge feature-branch
3Order

Put the learning moves in the order that makes the concept easiest to apply.

See Which Files Have Conflicts
How to See and Resolve Merge Conflicts
Why Do Merge Conflicts Happen?

What is a Merge Conflict?

A merge conflict happens when two branches change the same part of a file.

Git can't decide which change to keep, so you have to choose.

You must resolve the conflict before you can finish the merge.

Why Do Merge Conflicts Happen?

Merge conflicts usually happen when you merge branches that changed the same lines in a file.

This is common in collaborative projects or when working on long-lived branches.

How to See and Resolve Merge Conflicts

When you merge a branch and there are conflicting changes, Git will pause and mark the files with conflicts.

Example: Merge a Branch

git merge feature-branch

If there are conflicts, Git will tell you which files are affected.

See Which Files Have Conflicts

Use git status to see which files need your attention:

Example: Check Status

git status

See the Differences

Use git diff to see what changed and help you decide how to resolve the conflict:

Example: See Differences

git diff

Edit the Conflict Markers

Open the conflicted file. You'll see sections like this:

Conflict Markers

<<<<<<< HEAD
Your changes here
=======
Other branch's changes
>>>>>>> feature-branch

Edit the file to keep what you want, then remove the conflict markers ( <<<<<<< , ======= , >>>>>>> ).

Mark as Resolved

After fixing the file, mark it as resolved:

Example: Mark Resolved

git add filename.txt

Complete the Merge

Finish the merge with a commit (if Git doesn't do it automatically):

Example: Finish Merge

git commit

Cancel the Merge

If you want to stop and undo the merge:

Example: Abort Merge

git merge --abort

Use a Visual Merge Tool

If you prefer, you can use a visual tool to resolve conflicts:

Example: Use Mergetool

git mergetool

Pick One Side's Changes

If you want to keep only your changes or only the other branch's changes:

Example: Keep Our Changes

git checkout --ours filename.txt

Example: Keep Their Changes

git checkout --theirs filename.txt

Troubleshooting & Best Practices

  • If you're stuck, you can always use git merge --abort to start over.
  • Make sure you remove all conflict markers before marking as resolved.
  • If you use git mergetool and don't like the result, you can still edit the files by hand.

Previous

Git Cherry-pick & Patch

Next

Git CI/CD