Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.


Version Control with Git

Atlassian via Coursera


The Version Control with Git course provides you with a solid, hands-on foundation for understanding the Git version control system. Git is open source software originally created by Linus Torvalds. Git manages team files for large and small projects. This allows the team to continuously improve its product. It is used by most major technology companies, and is assumed knowledge for many modern programming and IT jobs. It is a core component of DevOps, continuous delivery pipelines and cloud-native computing. You could also use Git to manage the many continuously improving revisions of that book that you are writing.

In this course, you will not learn everything there is to know about Git, but you will build a strong conceptual understanding of the technology, and afterward will be able to confidently dig deeper on any topic that interests you. This course assumes no previous knowledge of Git, but if you do have experience with it, you may find this course to be both useful and challenging. This is especially true if you currently "know just enough Git to be dangerous".

There are two paths in this course. Both rely heavily on hands-on labs. One path assumes that you have experience using a command line interface, and the other path uses the Sourcetree graphical client. If you are not experienced with a command line, we highly suggest that you go through the Sourcetree path. Eventually, you might want to go through both paths, so that you can decide which tool to use for specific tasks. Besides, repetition is good for learning :)

You can watch the videos and take the quizzes from your phone if you want, but the hands-on labs require you to have a Windows or Mac computer. If you use the command line path through the course, you can also use Linux.

This course uses Bitbucket ( as the hosted provider for remote Git repositories. Bitbucket is free for teams of up to 5 people, including private repositories. However, most of the knowledge that you gain in this course applies to Git itself, and you can apply this knowledge to other hosted Git providers (such as GitHub).

This course tries to be as concise as possible. It will probably take you about 5-10 hours to go through one of the two paths, but your mileage may vary.


  • Our First Repository
    • This module gets you started using Git. It provides the foundation for the rest of the course. You will install Git and/or Sourcetree, create a local repository, create a commit, create a remote repository and push commits to a remote repository. You have the option of doing the hands-on labs using the Sourcetree graphical Git client and/or using a command line.
  • Branching and Merging I
    • This module discusses to of the key concepts involved with Git: branching and merging. It starts with foundational knowledge on Git's commit graph model, Git IDs and references. Branching and merging are then covered, including the difference between fast-forward merges and using merge commits.
  • Branching and Merging II
    • This module continues the discussion of branching and merging. It starts with resolving a merge conflict. Then synchronizing with remote repositories is covered, including the fetch, pull and push commands. The other major topic of this module is rewriting history. The commit history is an important part of a project. A clean commit history makes it easier to understand the project, and then contribute to it by adding new features or fixing problems. If you have not shared your commits, you can rewrite them in a way that makes a cleaner project history. Rewriting history includes amending commits and rebasing.
  • Git Workflows
    • This module covers topics on how teams work with Git. Git is flexible enough to work with many types of projects and teams. The better you understand Git's capabilities, the more effectively to can use it in your projects. Topics include pull requests, centralized workflows, feature branch workflows, forking workflows and Gitflow workflows. This module concludes with a project in which you use Git with a Gitflow workflow.

Taught by

Steve Byrnes


4.6 rating, based on 5 Class Central reviews

4.7 rating at Coursera based on 2872 ratings

Start your review of Version Control with Git

  • Quite complex explanation of git – starting from very basics and core ideas to a bit more complicated cooperation techniques. What is great in the course is that it shows some common patterns in working with git – from self-managed code repo to more complex project including developers' cooperation, releases, a few environments (dev, test, prod) etc. Great course, worth the time.
  • Profile image for Vaisakh
    Good course to get you started on the basics of Git.
    I just wish they introduced GitHub instead of BitBucket.
    The Udacity course is better if that's what you need.
  • Profile image for Ernests Auzins
    Ernests Auzins
    This is a perfect course for beginners and those who now some basics but would like to know a bit more how the git works.
  • I liked the 'Version Control with Git' course from Atlassian because I had long wanted to master software version control via Git technology. Until the course was completed, I gained information about Git only scrappy, sometimes reading articles and…
  • The course starts from the basics and you can certainly grasped the essentials of Git after learning this course.
    Some drawbacks below:
    1. some videos are a little bit long and can be splitted.
    2. May explain more on why we need this operation.
    3. Responses in the discussion form from staff is a little bit late some times.

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.