Git Going with Comparing, Branching and Merging

Comprehensive, step-by-step guide to Comparing, Branching, Merging and Rebasing in the Git source control system
4.7 (16 ratings) Instead of using a simple lifetime average, Udemy calculates a
course's star rating by considering a number of different factors
such as the number of ratings, the age of ratings, and the
likelihood of fraudulent ratings.
1,340 students enrolled
$50
Take This Course
  • Lectures 37
  • Contents Video: 2 hours
    Other: 7 mins
  • Skill Level Intermediate Level
  • Languages English, captions
  • Includes Lifetime access
    30 day money back guarantee!
    Available on iOS and Android
    Certificate of Completion
Wishlisted Wishlist

How taking a course works

Discover

Find online courses made by experts from around the world.

Learn

Take your courses with you and learn anywhere, anytime.

Master

Learn and practice real-world skills and achieve your goals.

About This Course

Published 7/2015 English Closed captions available

Course Description

Git Going with Comparing, Branching and Merging

Are you sure how to compare between commits, branches or the three states of Git? Do merges cause you trouble? What is a rebase, anyway?

In this course, students will walk though comparing (diffs), branching, merging and rebasing in Git. At the end of this course, students will have a firm understanding and experience with those paricular aspects of Git. Note: This is not a comprehensive course on Git -- we focus exclusively on comparing, branching, merging, and rebasing.

Recent Course Updates

  • October 17: Added Updates and Errata section

Course Outline

Course Introduction and Overview provides an introduction to this course.

After the introduction, the first thing we do is Git Installation for both Windows and Mac. There are dedicated sections for Windows and Mac -- so students can jump directly to the lectures specifically designed for their system. After the installation process, we will download the example project repository from GitHub (clone) which we will use throughout the course.

After installation and downloading the example project, we explore ways to make Comparisons in Git, including all the different local states, between commits, and between local and remote repositories.

We give great attending to Branching and Merging in Git. We start off with the simple "happy path" and learn about "Fast-Forward" merges and how to control them. The we walk through common "automatic" merges. Finally, we cause trouble on purpose so we can step through resolving conflicting merges with our visual merge tool.

With a strong foundation in branching and merging, we will then cover a more complex topic, Rebasing. In that section, we cover several rebasing examples, including how to resolve a rebase conflict.

All tools have installation and configuration sections to ensure no one is left behind.

Course Features

Presentations provide audio/video training of conceptual ideas. Since few like slide-ware presentations, slide-presentations are kept to a minimum.

Screencasts provide a video of the instructor's computer system with any actions, commands, or screens displayed and narrated. There is nearly 2 hours of screencast based video training in order to step through each command or action in sufficient detail.

Special Notes

This course is part of the "Git Going" series and is included with the Git Complete comprehensive course. If you are already enrolled in that course, do not enroll in this course.

This course makes extensive use of the command line. Each command is discussed in detail, so everyone can follow along.

What are the requirements?

  • Basic Computer Skills
  • Ability to install software on your system
  • Admin rights may be required for software installation
  • Basic understanding of Git source control (add, commit, push and pull)

What am I going to get from this course?

  • Install Git and related tools, specifically for comparing and merging
  • Compare (diff) between various parts within Git (branches, commits, and more)
  • Create, manage, and delete branches
  • Merge branches and resolve conflicts
  • Rebase branches and resolve conflicts

What is the target audience?

  • Anyone that needs learn about comparing, branching, merging and rebaseing within Git
  • Not for Git beginner (should be taken after intro course on Git)
  • Software engineers, developers, programmers on teams using branches

What you get with this course?

Not for you? No problem.
30 day money back guarantee.

Forever yours.
Lifetime access.

Learn on the go.
Desktop, iOS and Android.

Get rewarded.
Certificate of completion.

Curriculum

Section 1: Introduction
Course Introduction
Preview
04:53
Section 2: Windows Installation
Installation Overview for Windows
Preview
00:44
Git for Windows
Preview
05:40
Notepad++ Install
02:08
Notepad++ Configuration
03:23
P4Merge for Windows Install
05:42
P4Merge for Windows Configuration
04:18
Section 3: Mac OS X Installation
Installation Overview for Mac OS X
Preview
00:56
Apple Git on Mac OS X (Yosemite and above)
Preview
01:11
TextMate 2 Install
03:09
TextMate 2 Configuration
03:06
P4Merge for Mac Install
01:57
P4Merge for Mac Configuration
04:07
Section 4: Setup
Course Project Repository
Preview
03:08
Section 5: Comparing in Git
Git Repository Setup (for Comparing examples)
05:47
Comparing Working Directory and the Staging Area
Preview
02:24
Comparing Working Directory and the Git Repository (Last Commit)
01:44
Comparing Between the Staging Area and the Git Repository (Last Commit)
01:38
Limiting Comparisons to one File (or Path)
01:54
Comparing Between Commits
04:32
Comparing Between Local and Remote Master Branches
02:00
Comparison Section Cleanup and Push back to GitHub
01:32
Section 6: Branching and Merging in Git
Branching Basics
Preview
04:43
Happy Path / Fast Forward Merges
06:39
Happy Path / Disable Fast Forward Merges
04:07
Automatic Merges
05:25
Conflicting Merges and Resolution
11:35
Section Clean up and Push back to GitHub
01:32
Section 7: Rebasing in Git
Simple Rebase Example
08:16
Setup a Rebasing Conflict
02:45
Abort a Rebase
02:01
Rebase Conflict and Resolution
03:59
Pull with Rebase (GitHub)
04:45
Section Cleanup and Push to GitHub
01:48
Section 8: Updates and Errata
Git Mac OS X Updates
2 pages
Section 9: Conclusion
Review
01:19
Bonus: Exclusive Student Discounts
Article

Students Who Viewed This Course Also Viewed

  • Loading
  • Loading
  • Loading

Instructor Biography

Jason Taylor, Sr. Software Engineer, Technical Trainer on 13 Udemy Courses

With nearly 20 years of programming and software development experience, I started out teaching myself programming while in High School. I put myself through college working for a local Internet Service Provider as a programmer. Before finishing college, I developed and sold an award winning website to a Dot-Com start-up. After college, I have worked at several companies ranging from start-ups to large enterprises focusing on Java and client-side technologies (HTML/CSS/JavaScript). Throughout my career, I have opportunity to learn many software development best practices and exposure to several version control systems.

Ready to start learning?
Take This Course