Git by Example

Learn Git for teamwork and error-control, in the terminal and visual interface
4.2 (12 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.
667 students enrolled
$19
$60
68% off
Take This Course
  • Lectures 39
  • Length 3 hours
  • Skill Level Intermediate Level
  • Languages English
  • 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 5/2014 English

Course Description

Git is an essential skill for all team members of a technology company. In order to survive, technology companies are increasingly depending on continuous delivery to give customers a better experience. Git or other methods of Version Control are necessary in order to do this.

Git is necessary for teamwork, organisation, and management of projects. It is much easier to work when all team members can immediately see code changes and can follow what others have done.

It’s difficult to go wrong with Git. You can always roll back if someone deletes code, changes the structure of your project, or sends out incomplete code. Everyone makes mistakes, but when using Git properly, no mistake is fatal.

Today we will make sure you get familiar, understand, and then master the extremely popular Version Control system called Git. This was originally used in the Linux project, so it is lightweight, but able to cope with the largest of projects.

Throughout the course we will learn:

  1. What is Version Control, a gentle introduction for those not familiar with it.
  2. Markdown: what it is and how to use it.
  3. The basic structure of a repository. Vital to understand how everything works on a low level.
  4. Using the terminal/console properly.
  5. Using VIM, a great text editor within the console. We will use this to write commit messages when not using a GUI.
  6. Configuring Git. We will get it to work on any system.
  7. Basic Git commands that you will use in every project you are part of: git add, git commit, git push, git pull, git fetch.
  8. Writing meaningful commit messages. This is vital, so that everyone looking at the project can see what’s going on.
  9. Branches. What are branches?
  10. Organising branches via the Gitflow workflow. Ensuring your project has a great and easy to work with structure.
  11. Merging two branches together.
  12. Dealing with merge conflicts. We won’t have many of these!
  13. Using SourceTree for Git outside an IDE.

Now you can acquire a vital and in-demand skill to boost your CV and development abilities, help your team deliver working software, and make companies love you.

Join us now, and tomorrow you could be an expert. I’ll see you inside!

What are the requirements?

  • A computer running Windows, Mac OS, or basically any LINUX distribution
  • Git (which can be downloaded from http://git-scm.com)

What am I going to get from this course?

  • To acquire an extremely important skill in software development: version control
  • To fully understand how Git works, instead of just having a high-level knowledge of it

What is the target audience?

  • Software developers of any level
  • Project managers wanting to understand how the software development workflow goes
  • Anyone wanting to read and understand software development projects

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: What is version control?
What is Version Control?
Preview
03:43
We will be learning Git
02:53
Markdown and the README.md file
Preview
04:32
What is the .gitignore file?
04:21
The structure of a repository
Preview
04:20
Section 2: Basics of the terminal
What is the terminal?
03:15
Moving around the file system using the terminal
05:32
Moving and copying files with the terminal
04:05
Displaying and replacing file contents
03:05
Basics of VIM - a very powerful text editor!
02:02
Inserting text in VIM
02:55
Section 3: Basics of Git
Configuring Git
01:40
Initialising a Git repository: git init
Preview
01:33
Initialising a Git repository (terminal video)
01:59
Adding files to the staging area: git add
Preview
04:31
Adding files to the staging area (terminal video)
03:18
Committing files to the local repository: git commit
04:02
Committing files to the local repository (terminal video)
07:13
Writing appropriate commit messages: this is VITAL if working in teams!
05:33
04:25

In this video we look at adding a remote to our repository. It is a very simple process, but it needs to be done or else you won't be able to push and pull!

For Github help: https://help.github.com/articles/adding-a-remote

Pushing and pulling to and from the remote repository
03:48
Pushing and pulling (terminal video)
07:10
Section 4: Branches and workflows
What is a branch?
04:47
Creating branches in Git
04:39
Creating branches (terminal video)
05:07
Pushing branches to origin
01:53
Bringing in branches from origin
06:09
Deleting local and remote branches
Preview
05:13
Merging branches: presentation
05:32
Merging branches (terminal video)
04:01
06:47

In this video we take a look at how to revert changes made in a branch, by either deleting commits or creating new commits that 'undo' what the previous commits did.

Reverting changes (terminal video)
08:44
What is the "Gitflow" workflow?
Preview
08:44
Section 5: Gitflow and SourceTree
Using SourceTree to initialise a git-flow repository
03:56
Creating our first Gitflow feature
06:43
Finishing (and publishing) our first feature
04:33
Stashing changes with SourceTree
06:33
Adding remotes in SourceTree
Preview
02:39
Cloning a remote repository in SourceTree
04:23

Students Who Viewed This Course Also Viewed

  • Loading
  • Loading
  • Loading

Instructor Biography

Jose Salvatierra, Founder of School of Code and Computer Science instructor

I've been teaching computer science and playing and teaching music (grades 1 to 8) for over four years, to students of all ages and all skill levels. Here's my story so far.

I started programming at the age of 10, just a couple years after I started studying music, when my dad, excited that I had showed interest in similar things to himself, taught me the basics of Marin Saric's METAL. Shortly thereafter we moved on to RealBASIC, and from there I started learning, after a couple years, Java and C.

Ever since I started learning programming I knew I wanted to study Computer Science or something along those lines. Last year I ended up at the University of Dundee, studying Applied Computing.

The University of Dundee is one of the most prestigious for computing-related courses, and I was offered the chance to participate in their computing scholarships due to academic achievement.

I have worked for "Eseye", an M2M company, as an intern doing mainly backend developing, writing PHP scripts and programming Zenoss ZenPacks, and currently work for Skyscanner, one of Scotland's largest technology companies, programming mainly in Python and web languages.

At the moment I enjoy programming in Python, Java and C, playing and recording music, usually as an accompanying pianist for singers, and sports and bodybuilding. I hope that my courses are interesting to you, enjoyable and that you learn from them!

Ready to start learning?
Take This Course