Intermediate Git and GitHub Workflow
Keep adding new skills with 10,000+ programs for $239 (usually $399). Save now.
Intermediate Git and GitHub Workflow
This course is part of Git and GitHub Complete Master Class Specialization
Included with
Ask Coursera
Recommended experience
Recommended experience
What you'll learn
Perform advanced Git branching, merging, cherry-picking, and conflict resolution techniques.
Configure Git with SSH for secure collaboration and repository access.
Set up and use diff and merge tools like p4merge to resolve code conflicts visually.
Customize Git environments with editors, Bash prompts, and Git configuration options.
Skills you'll gain
Details to know
See how employees at top companies are mastering in-demand skills
Build your subject-matter expertise
- Learn new concepts from industry experts
- Gain a foundational understanding of a subject or tool
- Develop job-relevant skills with hands-on projects
- Earn a shareable career certificate
There are 10 modules in this course
This course features Coursera Coach!
A smarter way to learn with interactive, real-time conversations that help you test your knowledge, challenge assumptions, and deepen your understanding as you progress through the course. Build a solid foundation in Git and GitHub with this hands-on course that takes you beyond the basics. You'll gain practical experience managing branches, undoing changes, configuring tools, and collaborating securely via SSH—all essential for effective software development workflows. You’ll begin by mastering Git branching and learning to undo changes confidently using checkout, revert, and reset. Next, the course introduces best practices for syncing with GitHub, including pushing and pulling commits and establishing secure SSH connections. You'll also explore configuring Git with custom Bash prompts and default editors. As the course progresses, you’ll install and configure diff and merge tools like p4merge, learning how to compare changes across various stages and branches. Finally, a deep dive into advanced commands like cherry-picking, merging, and resolving conflicts equips you with expert-level Git skills. This course is ideal for developers, DevOps professionals, and technical teams working in collaborative environments. A basic understanding of Git is required. The course is best suited for learners at the intermediate level.
In this module, we will explore the fundamental concepts of Git branching. You'll learn how to create, switch, and manage branches effectively in a hands-on lab environment. This foundation sets the stage for more advanced workflows in collaborative development.
What's included
1 video2 readings1 assignment
1 video•Total 5 minutes
- Peek into Git Branching (Lab)•5 minutes
2 readings•Total 20 minutes
- Introduction to the Course 'Intermediate Git and GitHub Workflow'•10 minutes
- Full Specialization Resources•10 minutes
1 assignment•Total 15 minutes
- Git Branching Basics - Assessment•15 minutes
In this module, we will work through techniques for undoing changes in Git, from checking out past commits and individual files to using revert and the three types of reset. You'll also learn how to clean your working directory to keep your repository organized.
What's included
8 videos1 assignment
8 videos•Total 73 minutes
- Checking out Commits in a Git Repository - Part 1 (Lab)•14 minutes
- Checking out Commits in a Git Repository - Part 2 (Lab)•9 minutes
- Checking out Files in a Git repository (Lab)•7 minutes
- Reverting Changes in a Git Repository (Lab)•5 minutes
- Resetting a Git Repository - Part 1 (Lab)•7 minutes
- Resetting a Git Repository - Part 2 (Lab)•7 minutes
- Resetting a Git Repository - Part 3 (Lab)•9 minutes
- Cleaning a Git Repository (Lab)•15 minutes
1 assignment•Total 15 minutes
- Undoing Changes in a Git Repository - Assessment•15 minutes
In this module, we will walk through the essential process of pushing and pulling changes between your local Git setup and GitHub. You'll gain confidence in managing contributions in a shared development environment.
What's included
3 videos1 assignment
3 videos•Total 13 minutes
- Basics and Introduction - Pushing into GitHub!•1 minute
- Best Practice - Pulling Changes From a GitHub Repository (Lab)•6 minutes
- Transferring Your Commits - Pushing Local Changes into a GitHub Repository (Lab)•6 minutes
1 assignment•Total 15 minutes
- Pushing into GitHub - Assessment•15 minutes
In this module, we will establish secure communication between your system and GitHub using SSH. From key generation to managing connections and passphrases, you'll ensure your workflows are both efficient and secure.
What's included
8 videos1 assignment
8 videos•Total 31 minutes
- Basic and Introduction - GitHub through Secure Shell (SSH)•3 minutes
- Do I Already Have Secure Shell (SSH) Keys (Lab)?•3 minutes
- Generating a Secure Shell (SSH) Key Pair for Local and GitHub Use (Lab)•6 minutes
- Secure Shell (SSH) Agent and Keys (Lab)•2 minutes
- Adding the Secure Shell (SSH) Key to Your GitHub Account (Lab)•3 minutes
- Checking Your Secure Shell (SSH) Connection with GitHub (Lab)•2 minutes
- Switching Remote GitHub Uniform Resource Locator (URL) (Lab)•7 minutes
- Changing Passphrase of a Secure Shell (SSH) Key Pair (Lab)•5 minutes
1 assignment•Total 15 minutes
- GitHub through Secure Shell (SSH) - Assessment•15 minutes
In this module, we will customize the Bash prompt to reflect your Git environment, such as the current branch and status. This visual enhancement improves efficiency and awareness during development.
What's included
1 video1 assignment
1 video•Total 9 minutes
- An Introduction to the Custom Bash prompt in Git (Lab)•9 minutes
1 assignment•Total 15 minutes
- Custom Bash prompt in Git - Assessment•15 minutes
In this module, we will explore how to configure a preferred text editor for Git. You'll set up Sublime Text on Windows, Linux, and Mac to streamline editing commit messages and conflict resolution files.
What's included
4 videos1 assignment
4 videos•Total 42 minutes
- Brief Overview of Git Text Editors (Lab)•6 minutes
- Installing and Configuring a Text Editor (Sublime Text) for Git on Windows (Lab)•12 minutes
- Installing and Configuring a Text Editor (Sublime Text) for Git on Linux (Lab)•16 minutes
- Installing and Configuring a Text Editor (Sublime Text) for Git on Mac (Lab)•8 minutes
1 assignment•Total 15 minutes
- Installing and Configuring Default Text Editor for Git - Assessment•15 minutes
In this module, we will install and set up p4merge as a diff and merge tool for Git on Windows, Linux, and Mac. You'll learn how to integrate this tool into your workflow to simplify code comparisons and conflict resolution.
What's included
7 videos1 assignment
7 videos•Total 39 minutes
- Brief Overview of Git Diff and Merge Tools (Lab)•5 minutes
- Installing Git Diff and Merge Tool (p4merge) for Windows (Lab)•8 minutes
- Configuring Git Diff and Merge Tool (p4merge) for Windows (Lab)•6 minutes
- Installing Git Diff and Merge Tool (p4merge) for Linux (Lab)•8 minutes
- Configuring Git Diff and Merge Tool (p4merge) for Linux (Lab)•4 minutes
- Installing Git Diff and Merge Tool (p4merge) for Mac (Lab)•4 minutes
- Configuring Git Diff and Merge Tool (p4merge) for Mac (Lab)•4 minutes
1 assignment•Total 15 minutes
- Installing and Configuring Diff and Merge Tool for Git Repository - Assessment•15 minutes
In this module, we will explore how to use p4merge for comparing changes within Git. You’ll visually inspect modifications across different areas—working directory, staging, commit history, and remotes—improving code review and debugging.
What's included
6 videos1 assignment
6 videos•Total 44 minutes
- Viewing and Comparing Changes - Git Working Directory vs Staged (Lab)•10 minutes
- Viewing and Comparing Changes - Git Working Directory vs Commit Area (Lab)•3 minutes
- Viewing and Comparing Changes - Git Staging Area vs Commit Area (Lab)•7 minutes
- Viewing and Comparing Changes between Git Commits (Lab)•13 minutes
- Viewing and Comparing Changes For a Single File (Lab)•3 minutes
- Viewing and Comparing Changes - Local vs Remote (Lab)•8 minutes
1 assignment•Total 15 minutes
- Git Comparison with Git Diff Tool (p4merge) - Assessment•15 minutes
In this module, we will take a closer look at powerful Git commands like git log and git remote. You’ll gain skills to navigate commit history and manage repository remotes effectively.
What's included
2 videos1 assignment
2 videos•Total 17 minutes
- Git log Command - In-Depth•10 minutes
- Showing and Removing the Git Remote Command•8 minutes
1 assignment•Total 15 minutes
- Deep Dive into Few Git Commands - Assessment•15 minutes
In this module, we will master the art of merging in Git, from branch deletions to conflict resolution. You’ll also explore cherry-picking techniques for selective commit application, equipping you for complex branching scenarios.
What's included
9 videos1 reading3 assignments
9 videos•Total 94 minutes
- Git Branching Deep Dive: Branch Deletions and Renaming (Lab)•10 minutes
- Git Branching Deep Dive: Git Checkout (Lab)•10 minutes
- Git Merge Using "Fast-Forward" (Lab)•8 minutes
- Git Merge Using "No Fast-Forward" (Lab)•8 minutes
- Git 3-Way Merge (Lab)•9 minutes
- Resolving Git Merge Conflicts - Part 1 (Lab)•16 minutes
- Resolving Git Merge Conflicts - Part 2 (Lab)•4 minutes
- Introduction to Git Cherry-pick•11 minutes
- Git Cherry-pick - A Comprehensive Walkthrough (Lab)•18 minutes
1 reading•Total 10 minutes
- Conclusion to the Course 'Intermediate Git and GitHub Workflow'•10 minutes
3 assignments•Total 90 minutes
- Full Course Practice Assessment•15 minutes
- Git Branching and Merging Techniques - Assessment•15 minutes
- Full Course Assessment•60 minutes
Earn a career certificate
Add this credential to your LinkedIn profile, resume, or CV. Share it on social media and in your performance review.
Instructor
Explore more from Support and Operations
- Status: Free Trial
- Status: Preview
Course
Why people choose Coursera for their career
Frequently asked questions
Yes, you can preview the first video and view the syllabus before you enroll. You must purchase the course to access content not included in the preview.
If you decide to enroll in the course before the session start date, you will have access to all of the lecture videos and readings for the course. You’ll be able to submit assignments once the session starts.
Once you enroll and your session begins, you will have access to all videos and other resources, including reading items and the course discussion forum. You’ll be able to view and submit practice assessments, and complete required graded assignments to earn a grade and a Course Certificate.
More questions
Financial aid available,
