I've been using git for some months now, trendsetter that I am!
I've used quite a few source code/versioning/configuration management tools in my day, including, in roughly reverse order, svk, subversion, cvs, envy (for Smalltalk), and CLEAR/CASTER. Git has continued to amaze me with its power and flexibility.
Of course, with all that power and flexibility, there's a lot to learn, and sometimes "proactive interference" causes me to type:
git revert some_file.rb When I really meant:
git checkout some_file.rb because SVN habits die hard. Fortunately, the first command doesn't do anything since git revert takes a commit and not a path, so it just interrupts my thought processes a bit.
A recent tweet made me aware of EasyGit a wrapper for the git command which tries to make git act more "naturally." I guess that this is good stuff for some, but I don't think that it's for me. I'd rather take my lumps in learning something new, whether it's a programming language, a human language, or a tool. Otherwise I find that I end up with the equivalent of "speaking" with an accent. On the other hand, the documentation for EasyGit looks like it will be worthwhile to digest in order to understand the differences between git and, say SVN, a bit better.
Here are some other resources I've found helpful in grokking git.
- Peepcode's Git Internals PDF
- Very good coverage of git, how it works and most importantly how to use it. Written by Scott Chacon who wrote Grit, the git 'engine' written in ruby that powers github.
- Git from the Bottom Up
- Another guide to git focusing on how its implementation informs on how best to use it. Less comprehensive than the peepcode PDF, but it's ten bucks cheaper, i.e. it's free.
- GitReady
- A fairly new web resource, it provides a new, well written tip on git daily, for beginners through advanced git users. There's an RSS feed so that you can get reminders of new articles.
Finally, much as I love most of the offerings from the Pragmatic Programmers, I found Travis Swicegood's "Pragmatic Version Control Using Git" just a little disappointing. I'm sure that many will find it useful, but IMHO, it comes across as a rewrite of a generic version control book, even though it really isn't. Somehow, the things that make git git, rather than svn++ just don't seem to come across. But, hey, that's just my opinion.
Trackbacks
Use the following link to trackback from your own site:
http://talklikeaduck.denhaven2.com/trackbacks?article_id=528




