Merge Conflicts

In Introduction to Git, you discovered that Git is an intelligent system designed to preserve everyone's production so no work is lost. This is because it's not possible for Git to layer commits, or a snapshot of work, on top of each other. When you learned about Git branches, you read that there were multiple ways that Git avoids merge conflicts. While branches are one way to avoid merge conflicts, it's still possible to encounter merge conflicts when using branches.

In this lesson, you will learn how to resolve merge conflicts with Git Branches. You will learn concepts such as merge conflicts, the `.gitignore` file, wildcards, as well as other concepts. You will also learn how to resolve merge branches using `git merge`, how to abort a merge using `git merge --abort` as well other important commands that you will encounter while dealing with merge conflicts in your data science work.

As you work through each concept, you’ll get to apply what you’ve learned from within your browser; there's no need to use your own machine to do the exercises. The Python environment inside of this course includes answer-checking to ensure you've fully mastered each concept before learning the next.


  • Learn abouit merge conflicts and when they occur.
  • Learn about different techniques for resolving merge conflicts.

Mission Outline

1. Introduction
2. Aborting a Merge
3. Resolving Conflicts
4. Resolving Multi-Line Conflicts
5. Resolving Multiple Conflicts
6. Accepting Changes From Only One Branch
7. Ignoring Files
8. Removing Cached Files
9. Takeaways


Course Info:


The median completion time for this course is 4.9 hours. ​View Details​​​

This course is requires a basic subscription. This course includes four missions and one installation tutorial.  It is the tenth course in the Data Analyst in Python path and Data Scientist in Python path.


Take a Look Inside

(function(d) { d.addEventListener("DOMContentLoaded", function() { var pathname = d.location.pathname.replace(/^[/]|[/]$/g, "").replace("/", "-"); var tags = d.getElementsByTagName("iframe"); var type = pathname.startsWith("course") ? "?course=" : pathname.startsWith("path") ? "?path=" : null; if (type) { var i; for (i = 0; i < tags.length; i++) { if (tags[i].src.indexOf("signup#iframe") !== -1) { tags[i].src = tags[i].src.replace("#iframe", "") + type + pathname + "#iframe"; } } } }, false); })(document);