Git Tutorial

by Tom

Gaining an understanding of complicated subjects is easier with multiple approaches/teachers/media, and figuring there was a Git tutorial out there for everyone, I gathered 16 tutorials on the powerful, versatile revision control tool. Regardless of your degree of familiarity and comfort with Git, there should be an appropriate tutorial here for you. This list adds a lot more to another post that Digital Media Minute did, regarding a good ruby centric Git site.

The Git Users’ Manual from kernel.org may be the place to start, then again some say that it’s not the best tool for gaining a working understanding of Git. You be the judge.

Also from kernel.org is part 1 of a 2-part Git no-nonsense tutorial explaining how to import a new project, make changes to it and share those changes.

Part 2 attempts to explain two fundamental pieces of git’s architecture–the object database and the index file, and to provide enough of a foundation to understand the rest of the Git documentation.

Don’t have a lot of time? The Git-SVN Crash Course over at git-scm.com gives you a very clear, concise overview. An excellent place to start.

Scott Chacon has the excellent Git PDF on PeepCode, which if you haven’t visited, is a very well-done site with a great marketing hook: Peepcode screencasts! It’s US$9 but provides an excellent job of the fundamental workings of Git. True to the site name there is a US$9 Git screencast also. There is a ‘Git with rails’ screencast here, also by Scott Chacon; not sure if it’s the same one offered at PeepCode.

Want to get Git concepts? Charles Duan tries to give an ‘under the hood’ understanding of Git beyond just memorizing commands.

Ben Lynn’s philosophy with this tutorial was that rather than getting too bogged down in Git abstractions (a la the Git user manual), one could follow rough instructions for specific effects, then get a deeper understanding by practicing the techniques.

Along the same lines as Gitmagic, the supremely easy-to-navigate Gitready, by Nick Quaranto, bundles tips into beginner/intermediate/advanced, and appears to be updated regularly.

Perl uber-guru Randal Schwartz gives an hour-long overview on ‘what git is and isn’t', why it’s better than other repository managers, and a conceptual overview.

Version Control for Designers starts by defining the ‘version control’, then goes into a very lengthy and detailed Git tutorial. People with experience with other version control tools might find its approach almost too elementary or lengthy, but it’s an excellence reference if you need one that assumes no prior knowledge of SCM.

If Paolo Bonzini can help us ‘use Git without feeling stupid’ it’s an added bonus. Seriously, if the comments on part 1 and part 2 are any indication of the clarity of his explanation, he gets high marks.

The rather short Git for the lazy takes a functional approach, aiming to provide help that can be accessed in any point in the tutorial, especially if you suspect you’ve already made a mistake.

Appropriate for those unafraid of terms like like Directed Acyclic Graph ie computer science, as it states in the intro, Git for Computer Scientists, by Tommi Virtanen (Tv) is geared toward advanced users.

If this list still leaves you scratching your head over Git, one more reference you might consult is the GitHub Guides from GitHub.

Good luck!

If you found this helpful or interesting, please share it!

{ 2 comments… read them below or add one }

Randal L. Schwartz

Thanks for linking to my talk on Git.

Tom

Well you’re certainly welcome Randal; it was a no-brainer as they say, and my little list would’ve been incomplete without it.

Leave a Comment

Previous post:

Next post: