Posted over 7 years ago. Visible to the public.

Git basics [1d]

Git Archive is our version control system.


  • Understand why we use git.
  • Learn how to work with your local repository:
    • Create a local repository (git init)
    • Commit changes (git commit)
    • See the history (git log)
    • See changes (git diff)
    • Work with branches (git checkout, git checkout -b, git merge)
    • Work with the stash git stash
  • Learn how to work with a server:
    • git clone
    • git push
    • git fetch
    • git pull
  • Learn to use the tool tig
  • Configure your git correctly
  • Learn how to use Archive
  • Learn how to use GitHub Archive


Always clone repositories with SSH. Otherwise, you would have to send your git credentials to the remote server every time you interact with it.



Understanding git concepts

Try and explain:

  • Why do we use Git at all?
  • What is the "workspace"?
  • What is the "index" or "staging area"?
  • What is the "stash"?
  • What is the difference between a local and a remote repository?
  • What is a "Fast Forward"?

Play around on

  • In an earlier lesson we build a searchable address book. Create a repository for that program in your personal namespace (/firstname.lastname).
  • Add and commit the files
  • Create a branch and make some small changes there
  • Push changes to the server
  • Make a merge request from the branch to your master
  • Accept the merge request

Play around on

  • Sign up
  • Create a repository in your personal namespace (/username)
  • Add some files, push them
  • Delete the repository when done


We have some rules for using private GitHub accounts on your work PC.

Henning Koch
Last edit
3 months ago
Michael Leimst├Ądtner
About this deck
We are makandra and do test-driven, agile Ruby on Rails software development.
Posted by Henning Koch to makandra Curriculum (2015-07-07 17:04)