Git and Ruby: Git tutorials, articles and links for Rubyists
Following on from this weeks' launch of Github, it's worth rounding up some of the best Ruby-related Git content out there.
For those who still aren't familiar with what it is, Git is a distributed source code management / revision control system. It's vaguely similar to Subversion, CVS, Mercurial, or Bazaar in terms of managing source code, but with significant differences to all of these in varying areas. If you use any of these systems, however, Git will be of interest to you.
Git Tutorials and Introductions
The Git Screencast - A tutorial type screencast and technical walkthrough by Geoffrey Grosenbach. Well worth the $9.
Git vs Subversion - Are you a diehard Subversion user wondering what the hoopla's all about? Find out how Git compares to Subversion.
Git Cheat Sheet - A rather well designed and comprehensive "cheat sheet" that most Git users will find useful.
Linus Torvalds on Git - The famous / seminal video given by Linus Torvalds, the initial creator of Git, that introduced many of us to the tool.
Git: A Talk by Randal Schwartz - An hour long Google TechTalk on Git given by Randal Schwartz (a prominent Perl developer). I've seen a few people suggesting that this talk is better than Linus', although I haven't watched it all myself yet.
Git Crash Course for Subversion Users - A great introduction to Git focused at people already familiar with SVN.
The Thing About Git - An essay-like introduction to Git, including some motivations, questions, and basic examples.
git-svn is a gateway drug - Robby Russell looks at using git-svn to span the gap between migrating your projects from SVN to Git over time.
Git and Ruby
Git on RubyForge - Do you publish libraries on RubyForge? If so, you might be aware they support both CVS and SVN for source code management.. but Dr Nic fills us in that they now support Git too! Dr Nic continues to explain how to set it all up to work.
GitNub - A "pretty Git repository browser" for OS X. It's not particularly powerful yet, but has proven a great demonstration of how Git and Github are driving people to work together. It's also a cute example of a RubyCocoa application, forgetting the Git side of things!
Ruby-Github - A Ruby library that provides access to Github's API.
Ruby/Git - A Ruby library that interacts with Git repositories generally.
Rails moves from SVN to Git - David Heinemeier Hansson's announcement of the movement of the Rails source code from a public SVN repository to Github.
InfoQ's Ruby and Git Roundup - InfoQ have their own Git and Ruby roundup, like this post. It's pretty good but, as acknowledged in the Github post, I only noticed it after starting this post.. so, you get two roundups for the price of one!
Setting up CruiseControl.rb with Git - Chris Bailey demonstrates how to use Git along with CruiseControl.rb, the continuous integration tool.
Rake task to move from SVN to Git - Technoweenie presents an interesting Rake task that can export code from SVN and bring it into a new Git repository in one hit.
General Git Resources
Git Magic - A ridiculously indepth list of Git related resources and tips.
Cleaning Migrate Your Subversion Repository to a Git Repository - A handy guide to moving an SVN repository over to Git. Short and sweet!
Show your Git branch name on your command line - This is incredibly useful. A short shell script that shows your current Git branch within your command prompt (if you're within a Git repository, of course).
Git HOWTO Index - Links to a handful of interesting posts from the Git mailing list. Mostly focused on more advanced topics.
A Three Finger Salute to Git - Rubyist Geoffrey Grosenbach (of Peepcode fame) comes up with a clever technique to use the new MacBook Pro / MacBook Air "multi touch" functionality to make pulling and pushing to a Git repository a "three finger" operation! A little wacky, but very clever.
Github-Campfire - A Sinatra app that pushes your Github commit info to a Campfire chat room.
GitHub isn't the only Git repository hosting option out there. There are two other significant ones:
repo.or.cz - The grandaddy of Git repository hosts. Free, public, and the first centralized Git host. It's nearly entirely used by open source projects.
Gitorious - An older, Githubesque Git repository host which, sadly, didn't quite get the attention it should have. Still used by quite a few projects though, and is free to use.