Version control system concept
Distributed vs centralized version control systems
Git concepts: working directory <-> index (stage) <-> repository (*)
Starting and configuring the project with git init
and git config
Information about current status wit git status
, git log
and git diff
Branches and commits (*)
Moving up and down through you repo with git checkout
Merging (*)
Undoing changes with git reset
and git revert
(*)
Working with upstream repositories: git clone
, git fetch
, git pull
, git push
Experience with one of the following tools: GitHub, BitBucket, GitLab
Concept of pull-request (merge-request) (*)
Forking a repo
Choosing a suitable approach for collaboration: centralized workflow, feature branch workflow, gitflow workflow, forking workflow
Cherry-picking specific commits
Rebasing and interactive rebasing (*)
.gitignore (*)
Stashing
Hooks (*)
Tags
Managing line ending with autocrlf
option in git config
Looking at the log of changes with git reflog
Repository status in your prompt with git-prompt.sh
Git pruning of local and remote branches
--force and --force-with-lease flags
- What is version control?
- Git Cheatsheet
- Git-it Interactive git learning course
- Learn git branching
- Comparing-workflows
- Git flightrules