Git basics
Git is a version control system (VCS) that tracks the history of changes as people and teams collaborate on projects together. As developers make changes to the project, any earlier version of the project can be recovered at any time.
Developers can review project history to find out who made what changes when and why.
Complete tutorials
Git Documentation
Atlassian Git Tutorial
Selected sections:
- Saving changes –
add,commit,diff,stash - Inspecting a repository –
status,log,tag,blame - Undoing changes –
checkout,clean,revert,reset,rm - Rewriting history –
commit,rebase,reflog - Syncing –
remote,fetch,push,pull - Using branches –
branch,checkout,merge
Using Git - GitHub Docs
Selected sections:
- Pushing commits to a remote repository –
push - Getting changes from a remote repository –
clone,fetch,merge,pull - Rebasing
- Resolving merge conflicts
How to write a Git commit message
- Chris Beams: How to Write a Git Commit Message
- Tim Pope: A Note About Git Commit Messages
- Peter Hutterer: On commit messages
- Git Book: Commit Guidelines
- Python for Data Science: Git best practices
Cheat sheets
- Git Cheat Sheet
- GitHub Git Cheat Sheet - GitHub Cheatsheets
- Git cheat sheet | Atlassian Git Tutorial
- git - the simple guide
- Oh Shit, Git!?!
Tools
Meld – Visual diff and merge tool that can be used with Git commands git difftool and git mergetool
Tig – Git repository browser
