-
Understanding Git
http://www.queness.com/post/16139/understanding-git
A collection of links to articles, tutorials, cheat sheets, and clients -
7 Useful Git Tips for Beginners
http://sixrevisions.com/web-development/git-tips/
High-level directions for learning Git, including links to many tutorials
-
Atlassian Git Tutorials
https://www.atlassian.com/git/tutorials
An excellent collection of tutorials, from basics to advanced topics. Very well written and easy to read. -
Git Concepts Simplified
http://gitolite.com/gcs.html
An HTML slideshow that walks through Git's core concepts, with diagrams. -
Learn Version Control with Git
https://www.git-tower.com/learn/git/ebook/command-line/introduction
A complete introduction to using Git that assumes no prior knowledge -
Git from the Bottom Up
https://jwiegley.github.io/git-from-the-bottom-up/
Explains Git by describing the internal data structures and how they work. More technical than other tutorials, but understanding the way Git handles data can really make understanding the commands easier. -
Conversational Git
http://blog.anvard.org/conversational-git/
An easy-to-read, informal approach to learning Git -
Think like a Git
http://think-like-a-git.net/
A tutorial for "advanced beginners" who know the basic commands, but want to better understand Git's concepts -
Git from the Inside Out
https://codewords.recurse.com/issues/two/git-from-the-inside-out
An explanation of how Git works, by describing the internal data structures and the graph that they form. -
Ry's Git Tutorial
http://rypress.com/tutorials/git/index
An excellent introduction to Git's key concepts and command. Very well written and explained. -
Git for Humans
https://speakerdeck.com/alicebartlett/git-for-humans
A slideshow introducing Git concepts without complex terminology
-
How to Write a Git Commit Message
http://chris.beams.io/posts/git-commit/
Great advice for how to write a succinct, informative, and useful commit message. -
Advance Git
https://medium.com/@jstats/advance-git-dfe557bdbe59
Gives advice for good commit messages, and describes the options and usage for several advanced Git commands (add --patch
,rebase
,reflog
, and more). -
Git Useful Tips
http://ericdouglas.github.io/2016/04/01/Git-Useful-Tips/
A useful reference to commands and concepts. -
19 Tips for Everyday Git Use
http://www.alexkras.com/19-git-tips-for-everyday-use
A variety of practical commands for different scenarios. -
Git Tips
https://github.com/git-tips/tips
A large collection of Git tips and tricks. -
Digit
https://github.com/optionfactory/digit
A tool to visualize the contents of a Git repo as an aid to learning -
Advanced Git Advice
https://medium.com/@zlobin/advanced-git-advice-27087a7fbb29
A variety of useful tips and commands.
-
Git's Patch Mode All the Way
https://blog.petrzemek.net/2016/07/10/git-patch-mode-all-the-way/
Shows how to use Git's ability to selectively pick and choose chunks of code as part of various actions -
Git: Undoing changes and rewriting history
http://slides.com/lilianakastilio/github-4#/
A slideshow discussing various ways to change commit history -
Beginner's guide to git rebasing and squashing
https://shinglyu.github.io/web/2016/11/08/servo-rebase-and-squash-guide.html
A tutorial on rebasing and squashing commits to change past history. -
Git Rebasing and Clean Pull Requests
https://www.jungledisk.com/blog/2016/11/21/git-rebasing-and-clean-prs/
Some best practices for cleaning up branches and producing readable commits.
-
Pro Git
https://git-scm.com/book/en/v2
An in-depth online reference to all aspects of Git -
Git Succinctly
https://www.syncfusion.com/resources/techportal/details/ebooks/git
A free PDF that covers Git concepts and usage -
Git Internals
https://github.com/pluralsight/git-internals-pdf
A free PDF that digs deep into Git's data structures and behavior
-
Git Workflows
http://documentup.com/skwp/git-workflows-book
Covers ways to increase productivity, create cleaner commit history, and improve code reviews -
Understanding the Git Workflow
https://sandofsky.com/blog/git-workflow.html
Looks at how to properly handle branches and local history vs public history -
A Successful Git Branching Model
http://nvie.com/posts/a-successful-git-branching-model/
Describes a widely used multi-branch approach to managing development and release processes
-
Git CLI Cheat Sheet
http://cheat.errtheblog.com/s/git
A list of many useful Git commands, with explanations -
A Visual Git Reference
http://marklodato.github.io/visual-git-guide/index-en.html
Describes several common Git commands, with diagrams to explain what each one does -
Tower - Git Cheat Sheet
https://www.git-tower.com/blog/git-cheat-sheet/
A quick reference PDF listing some common commands -
Interactive Git Cheat Sheet
http://ndpsoftware.com/git-cheatsheet.html
A clickable page that shows how various commands move data between different parts of Git's storage (working copy, index, local repo, remote repo) -
giteveryday
https://www.kernel.org/pub/software/scm/git/docs/giteveryday.html
A useful minimum set of commands for Everyday Git. Commands grouped by usefulness to different categories of users. -
Git Getting Started Cheat Sheet
https://gist.github.com/akras14/3d242d80af8388ebca60
Another useful list of commands with explanations
-
SourceTree (Win, Mac)
https://www.sourcetreeapp.com/
A solid Git client, with a good variety of features. Includes UI for interactive rebase, which makes that task much easier to do. Note that a recent release (1.8 for Windows, 2.2 for Mac) drastically changed the UI appearance, added required accounts, has had a number of performance issues, and is generally seen as a step backwards. You may want to download the earlier versions instead (1.6.25 for Windows, 2.1 for Mac ). -
Git Extensions (Win)
http://gitextensions.github.io/
A Windows client with Windows Explorer and Visual Studio integration -
Git Tower (Mac)
https://www.git-tower.com/
A well-designed Git client for Mac -
SmartGit (Win, Mac, Linux)
http://www.syntevo.com/smartgit/
A cross-platform Git client aimed at professionals -
GitKraken (Win, Mac, Linux)
http://www.gitkraken.com/
A cross-platform Git client, currently in beta