/Git

This repository contains the course material for the Git course

Git

This repository contains the course material for the Git course.

Git course was first introduced in the Hack Your Future (HYF henceforth) in September 2016. We think that learning Git is one of the useful skills to become a successful and efficient software engineer. The aim of this course is to learn the basics of Git and not to be an expert. The Git module was designed to be taught in three two-hour lectures.

We want to use this repository as an archive of course material (slides/tutorials), useful resources, teaching ideas etc.

learning goals lesson 1

The teacher should:

  • Have explained the need for VCS for developers working together on software
  • Have given a short intro about VCS (version control system)
  • Have talked about GIT: what is a commit and the 3 different stages.
  • Have shown in live-coding how to create a new repository: clone, init
  • Have shown how to add files to that new repository: add rm
  • Have shown how to commit and push those files: commit push

The student should:

  • Have an understanding of problems for developers working together on software
  • Have an understanding of the need for version control software
  • Have an understanding of what GIT is and what problem it solves.
  • Understand what a commit is and how it represents a certain unit of work
  • Know how to create a new repository using clone and init
  • Know how to add / remove files to that new repository
  • Know how to commit and push files in that new repository.

learning goals lesson 2

The teacher should:

  • Have explained what branches are and why we want to use them.
  • Have repeated the explanation of what a remote is.
  • Have explained the different kinds of branches: local, local tracking, remote tracking.
  • Have repeated how to navigate branches, f.e. using git checkout.
  • Have explained what HEAD in git means.

The student should:

  • Have an understanding of branches and how they can be used.
  • Know what a remote is and know how to retrieve remote information from git: git remote [show] [-v] [-vv]
  • Know what the difference between the three types of branches are.
  • Know how to navigate between branches and what git commands to use for them.
  • Have an understanding of what HEAD means.