Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Git (Part 1): Step-by-Step Guide to Git stages, Merge, Reset
Rating: 4.6 out of 5(38 ratings)
1,098 students

Git (Part 1): Step-by-Step Guide to Git stages, Merge, Reset

Commit history-driven curriculum to learn Git in detail, including Git stages, Merge, Vim, Revert, Reset and Stash
Last updated 3/2025
English
English [Auto],

What you'll learn

  • Install Git and set up new or existing projects in remote repositories.
  • Understand and manage Git stages: untracked, modified, staged, and committed.
  • View commit history and navigate back to previous versions when needed.
  • Edit files directly in the terminal using Vim.
  • Merge branches and resolve conflicts efficiently.
  • Revert changes and restore previous commits when necessary.
  • Use Git stash to temporarily store and retrieve changes.

Course content

1 section11 lectures1h 35m total length
  • Why Git4:43

    Explore why git, a version control system, solves collaboration, history tracking, and project-management challenges, and begin learning essential commands, git stages, merge, revert, and restoring older versions.

  • Installation3:17

    Install git on Windows by downloading the installer, verify with git version, and open git bash from the file explorer. The next lesson covers clone and init.

  • Clone & Init13:07

    Learn how to clone and init a repository, clone with http or ssh, configure ssh keys, and connect an existing project to a new empty repository.

  • Git stages7:59

    Explore git stages, from untracked and modified files through not staged and staged to committed, then pushed to the origin, using git add, reset, commit, and push.

  • gitIgnore2:30

    Learn to use the gitignore file to ignore files and folders, such as the idea folder, preventing them from entering the repository, and to add, commit, and push changes.

  • Inspecting commands3:55

    Inspect the git workflow using git status, git diff, and git log to track file changes, staging, commits, and history, including selecting recent commits with git log -2.

  • Vim10:15

    Explore vim basics in terminal: insert and command modes, key commands (i, u, dd, escape), search with / and n, and save or exit using :w, :q, :wq, or :x.

  • Merge22:46

    Learn how to use branches and merges in git, including fast forward and no fast forward merges, conflict resolution, and best practices for feature branches.

  • Revert6:55

    Learn to revert a specific git commit with a new revert commit, handle conflicts, and use continue or abort options, verified by git status and git log.

  • Reset10:09

    Explore how the head represents the latest commit, and use soft and hard resets to move back commits, manage staged changes, and force push to rewrite history on origin main.

  • Stash9:51

    Master the git stash by saving and restoring modified and staged changes, and learn to stash untracked files using -u or --all, with commands push, apply, list, drop, and pop.

Requirements

  • No previous experience needed. You will learn everything you need to know.

Description

It's a carefully crafted curriculum, not just a random collection of basic information, but a structured and illustrative approach designed to help you master everything you need for real-life applications, enabling you to work smoothly in large companies. The content is designed to bridge the gap between theory and practice, helping you confidently apply your skills in real-world collaborative environments. Every concept is explained clearly. In this course, you will learn in detail the most important Git commands and understand their impact on the history of changes, ensuring you have both the technical knowledge and the practical mindset required to thrive in professional development teams.

We covered and explained the following topics:

  • Git stages (untracked files, modified files, not-staged changes, staged changes, Committed changes).

  • gitIgnore.

  • Inspecting commands (checking the status of project's files, checking commit history).

  • Vim (insert mode, command mode).

  • Merge (fast-forward, no-fast-forward).

  • Revert.

  • Reset (soft, hard).

  • Stash.

By the end of this course, you'll be fully equipped to collaborate effectively with a team on the same project, confidently managing the commit history with precision and consistently adhering to best practices, just like in a professional setting at large organizations where teamwork, organization, and code history control are essential.

Who this course is for:

  • For beginners taking their first steps into programming.
  • Anyone who wants to collaborate with a team on the same project.
  • Anyone who wants to learn how to manage their project’s versions and change history.