Git: Beyond the Basics: Glossary

Key Points

Getting started with Git
  • Use git config with the --global option to configure a user name, email address, editor, and other preferences once per machine.

  • Set up ssh keys to connect to github.com

Understanding Add and Commit
  • Git add copies files into the staging area

  • Git commit creates a new commit by duplicating the staging area

  • Git status shows a summaries of differences between the trees

  • Commits are not overwritten, they’re stored somewhere and replaced

Commits and branches
  • Understand HEAD, master, commits and branches

The Nuts and Bolts
  • Used cat-file -p to explore blobs and objects

Changing History
  • Learnt to change the state of the index, working tree using git reset

  • Learnt to change the commit which this branch points to with git reset

  • Learnt to selectively pick up historical versions of files with git checkout

  • Understand HEAD, master and the latest commit

Working with remotes
  • We’ve been introduced to remotes and working with multiple remotes

  • We’ve seen how to track, work with and push to remote branches

  • We’ve used and created tags to give names to interesting commits

  • We’ve learnt to watch out for submodules, and initialise them

Logging
  • We’ve been introduced powerful logging commands

Telling your story
  • Learnt to use git to revert changes and modify the last commit

  • Learnt to change history in any way that we like to clean up our development story

  • Learnt to continue from the last commit in master with git pull --rebase

Identifying breaking commits
  • Learnt to use git blame to identify when a problem line was introduced

  • Learnt to use binary searches to identify lines which first introduce a problem

Glossary

FIXME